home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 095 / 131adoc1.arc / RBBS-PC1.DOC
Text File  |  1985-12-23  |  239KB  |  5,042 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.                   REMOTE BULLETIN BOARD SYSTEM
  14.  
  15.                              for the
  16.  
  17.                       IBM Personal Computer
  18.  
  19.                          Version CPC13.1
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.                    Copyright 1983, 1984, 1985
  28.  
  29.                                by
  30.  
  31.                          D. Thomas Mack
  32.                          10210 Oxfordshire Road
  33.                          Great Falls, Virginia 22066
  34.                          VOICE    -- (703) 759-4357
  35.                          DATA  #1 -- (703) 759-5049
  36.                                #2 -- (703) 759-9659 
  37.  
  38.                                AND
  39.  
  40.                          Jon Martin
  41.                          4396 N. Prairie Willow Ct.
  42.                          Concord, California 94521
  43.                          DATA  -- (415) 689-2090
  44.  
  45.                              December 1, 1985
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  63.  
  64.                         TABLE OF CONTENTS                            Page
  65.                         -----------------                            ----
  66.  1.0  INTRODUCTION                                                      6
  67.       1.1  The Capital PC User Group                                    
  68.       1.2  The "contributions" requested for RBBS-PC                   
  69.       1.3  The "history" behind RBBS-PC                                 7
  70.       1.4  RBBS-PC Update Conventions                                  12
  71.       1.5  An Example of "Users Helping Users"                         13
  72.       1.6  What's new with CPC13.1A                                    14
  73.  
  74.  2.0  RBBS-PC "BASE-LINE" HARDWARE REQUIREMENTS                        20
  75.  
  76.  3.0  RBBS-PC's SUPPORT POLICIES                                       22
  77.       3.1  RBBS-PC's Vendor Support Policy                             
  78.       3.2  RBBS-PC's User Support Policy                               25 
  79.  
  80.  4.0  OPERATING SYSTEM REQUIREMENTS                                    26
  81.  
  82.  5.0  HOW TO GET A COPY OF RBBS-PC SENT TO YOU                         27
  83.  
  84.  6.0  FILES RBBS-PC USES                                               28
  85.       6.1  RBBS-PC System Files                                        30
  86.       6.2  RBBS-PC Text Files                                          32
  87.  
  88.  7.0  USING THE "CONFIG" UTILITY TO CONFIGURE RBBS-PC CPC13            34
  89.       7.1  Global RBBS-PC Parameters (Part 1 of 2)                     34
  90.            7.1.1   SYSOP's Name and Password for Remote Access         
  91.            7.1.2   Password to Locally Take Over RBBS-PC as SYSOP      35
  92.            7.1.3   SYSOP's Default Sign-on Mode                        
  93.            7.1.4   SYSOP's "office" Hours                              
  94.            7.1.5   Use of Printer Bell                                 
  95.            7.1.6   Number of Rings RBBS-PC Waits Before Answering      
  96.            7.1.7   Deny Access to Callers Who Use 300 Baud             36
  97.            7.1.8   Are You Using ANSI.SYS With A Color Monitor         
  98.            7.1.9   Go Off-line Whenever A Disk Full Occurs             37
  99.            7.1.10  Prompt Sounds                                       
  100.            7.1.11  Maximum Time per Session                            
  101.            7.1.12  Limit Maximum Time on System Per Day                38
  102.            7.1.13  Months of Inactivity before a User is Deleted       
  103.            7.1.14  Communication Port to be Used                       
  104.            7.1.15  Version of DOS RBBS-PC Will Run Under               
  105.            7.1.16  Name of RBBS-PC                                     
  106.       7.2  Global RBBS-PC Parameters (Part 2 of 2)                     38
  107.            7.2.1   Color Monitor's Foreground/Background/Border        
  108.            7.2.2   Selecting the Modem Speaker On or Off               39
  109.            7.2.3   Reminding Users of Messages They Left               
  110.            7.2.4   Remind Users of Uploads and Downloads               
  111.            7.2.5   Remind Users of Their Profile Preferences           
  112.            7.2.6   Default User Page Length                            
  113.            7.2.7   Maximum Number of Lines per Message                 
  114.            7.2.8   Requiring non-ASCII Protocol for Binary Files       
  115.            7.2.9   MICROCOM's MNP Protocol                             
  116.            7.2.10  Omitting First Level Directory in "New" Command     40
  117.            7.2.11  Omitting Upload Directory in "New" Command          
  118.            7.2.12  Making System "Welcome" Interruptible               
  119.            7.2.13  Making System Bulletins "Optional"                  
  120.  
  121.                        Page 2 of 108
  122. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  123.  
  124.                         TABLE OF CONTENTS (continued)                Page
  125.                         -----------------------------                ----
  126.            7.2.14  Type of PC RBBS is Running On                       41
  127.            7.2.15  Issuing Modem Commands Between Rings                
  128.            7.2.16  Baud Rate to Initially Open Modem At                
  129.            7.2.17  Seconds Waited Before Logging Off Idle Users        
  130.            7.2.18  Using "Dumb" Modems
  131.       7.3  Parameters for RBBS-PC "text" Files                         42
  132.            7.3.1   Drive Containing RBBS-PC "Bulletins"               
  133.            7.3.2   Name of File Describing "Bulletins"                 
  134.            7.3.3   Number of System Bulletins                          
  135.            7.3.4   Prefix Used to Name Bulletin files                  
  136.            7.3.5   Drive Containing On-line Help Files                 
  137.            7.3.6   Prefix Used to Name Help Files                      
  138.            7.3.7   Name of "NEWUSER" File                              
  139.            7.3.8   Name of "WELCOME" File                              43
  140.            7.3.9   Name of File Describing File Directories            
  141.            7.3.10  Name of SYSOP's Command Menu                        
  142.            7.3.11  Name of Messages Subsystem Command Menu             
  143.            7.3.12  Name of File Subsystem Command Menu                 
  144.            7.3.13  Name of Utilities Subsystem Command Menu            44
  145.            7.3.14  Menu that Lists Available Conferences               
  146.            7.3.15  File Containing Invalid User Names                  
  147.            7.3.16  Factor to Extend Session Time for Uploads           45
  148.            7.3.17  Default System Type for New Users                   
  149.            7.3.18  Drive Available for Uploading
  150.            7.3.19  Name of Directory to Update for Uploads
  151.            7.3.20  Drives Available for Downloading                    
  152.       7.4  Parameters for RBBS-PC "system" Files                       45
  153.            7.4.1   Name of "MESSAGES" File                             
  154.            7.4.2   Name of "CALLERS" File                              
  155.            7.4.3   Name of File Containing "Comments" for the SYSOP    46
  156.            7.4.4   Name of "USERS" File                                
  157.            7.4.5   Extended Logging to "CALLERS" File                  
  158.       7.5  Parameters for RBBS-PC "Doors"                              46
  159.            7.5.1   Enabling the "Door" Subsystem                       
  160.            7.5.2   Name of Menu that Lists the Available "Doors"       
  161.            7.5.3   File RBBS Builds Dynamically to Open a "Door"       47
  162.            7.5.4   File to Re-invoke RBBS-PC When a "Door" Closes      
  163.            7.5.5   Drive to Look for COMMAND.COM On
  164.       7.6  Parameters for RBBS-PC's Security                           47
  165.            7.6.1   Minimum Security Level to Get Into RBBS-PC          
  166.            7.6.2   Default Security Level for New Callers              
  167.            7.6.3   Default Security Level for SYSOP                    
  168.            7.6.4   File of File Names With Download Security           48
  169.            7.6.5   Minimum Security Level to See SYSOP's Menu          
  170.            7.6.6   Minimum Security Level to Use RBBS-PC "Doors"       
  171.            7.6.7   Maximum # of Security Violations Before Lockout     
  172.            7.6.8   Security Level(s) for Each Command                  
  173.            7.6.9   File With Privileged Group Passwords                
  174.            7.6.10  Maximum Number of Password Changes Per Session      49
  175.            7.6.11  Minimum Security For Temporary Password Changes     
  176.            7.6.12  Minimum Security to Overwrite Files on Uploads      
  177.            7.6.13  Security Level of Conference "Viewers"              
  178.            7.6.14  Security Levels Exempt from Purge of User File      
  179.  
  180.  
  181.                        Page 3 of 108
  182. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  183.  
  184.                         TABLE OF CONTENTS (continued)                Page
  185.                         -----------------------------                ----
  186.       7.7  Parameters for Multiple RBBS-PC's/Conferences               49
  187.            7.7.1   Maximum Number of Concurrent RBBS-PC's              
  188.            7.7.2   Environment Running Concurrent RBBS-PC's            
  189.            7.7.3   Method RBBS-PC Uses to "Recycle" When User Logsoff  50
  190.            7.7.4   Maximum Number of Records in the "USERS" File       
  191.            7.7.5   Maximum Number of Records in the "MESSAGES" File    
  192.            7.7.6   Maximum Number of Messages Allowed                  51
  193.            7.7.7   Conference File Maintenance                         
  194.       7.8  RBBS-PC SYSOP Utilities                                     51
  195.            7.8.1   Packing the "MESSAGES" File                         
  196.            7.8.2   Rebuilding the "USERS" File                         52
  197.            7.8.3   Printing Message Header Records                     
  198.            7.8.4   Renumbering Messages                                
  199.            7.8.5   Repairing the MESSAGES File                         
  200.            7.8.6   Initialize Hayes 2400 Firmware for RBBS-PC          
  201.       7.9  Use of DOS Subdirectories                                   53
  202.            7.9.1   Using DOS Subdirectories
  203.            7.9.2   Upload DOS Subdirectory 
  204.            7.9.3   Download DOS Subdirectories                         
  205.            7.9.4   List, Change, Add, Delete DOS Subdirectories Used
  206.    
  207.  8.0  THE HAYES MODEM SWITCH SETTINGS AND CONSIDERATIONS               54
  208.       8.1  Hayes Modem Switch Setting Considerations
  209.       8.2  Hayes Command's Considerations                              55
  210.  
  211.  9.0  USING MULTIPLE FILE DIRECTORIES                                  57
  212.  
  213. 10.0  SETTING UP ".BAT" FILES FOR RBBS-PC                              58
  214.  
  215. 11.0  THE USE OF RBBS-PC "DOORS"                                       59
  216.  
  217. 12.0  THE SECURITY FEATURES OF RBBS-PC                                 61
  218.       12.1  RBBS-PC's Security Features                                
  219.       12.2  Examples of Uses for RBBS-PC's Security System             62
  220.       12.3  How to Implement the Password File                         63
  221.       12.4  How to Implement the Security for Download Files           64
  222.       12.5  How to Implement the Security for RBBS-PC Commands         65
  223.       12.6  Beware of the "Trojan Horse"                               67
  224.  
  225. 13.0  SYSOP FUNCTIONS                                                  68
  226.       13.1  SYSOP Commands Within RBBS-PC                              
  227.       13.2  SYSOP's Use of Function Keys                               69
  228.  
  229. 14.0  DOS LIMITATIONS ON RUNNING PROGRAMS REMOTELY                     72
  230.       14.1  How to Get DOS to Monitor Carrier Detect                   
  231.       14.2  How to Redirect Graphic Displays to Remote Users           73
  232.  
  233. 15.0  CONFERENCING WITH RBBS-PC                                        74
  234.  
  235. 16.0  UPLOADED FILE TIPS                                               76
  236.  
  237. 17.0  DUE WARNING AND SYSOP'S LEGAL LIABILITY                          77
  238.  
  239.  
  240.  
  241.                        Page 4 of 108
  242. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  243.  
  244.                         TABLE OF CONTENTS (continued)                Page
  245.                         -----------------------------                ----
  246. 18.0  COMPILING AND LINKING RBBS-PC                                    78
  247.       18.1 Compiling CONFIG.BAS and RBBS-PC.BAS                        
  248.       18.2 LINKing CONFIG                                              
  249.       18.3 LINKing RBBS-PC 
  250.  
  251. 19.0  LIMITED LICENSE                                                  80
  252.  
  253. 20.0  LIMITED WARRANTY                                                 81
  254.  
  255. 21.0  UPGRADING FROM CPC12-5B TO CPC13-1A                              82
  256.  
  257. 22.0  RBBS-PC FUTURE DIRECTIONS                                        83
  258.  
  259.  
  260. APPENDICES:
  261.      A -- RBBS-PC Record Formats                                       85
  262.      B -- RBBS-PC Vendor Protocol Interface Specifications             89
  263.      C -- RBBS-PC in a MultiLink Environment                           90
  264.      D -- RBBS-PC in a CORVUS Network                                  92
  265.      E -- RBBS-PC in an ORCHID or AST PCnet Network                    93
  266.      F -- RBBS-PC and the Hearing-Impaired                            101
  267.      G -- RBBS-PC and the IBM PCjr                                    102
  268.      H -- RBBS-PC Subscription Service                                105
  269.      I -- RBBS-PC National Listing Service                            106
  270.      J -- RBBS-PC and the Ark-Paradyne Modem Switch Settings          107
  271.      K -- RBBS-PC and the AT's RS-232 Cable                           108
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.                        Page 5 of 108
  302. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  303.  
  304. 1.0 INTRODUCTION
  305. ----------------
  306. RBBS-PC  is  a Remote Bulletin Board System for the IBM personal  computer,  
  307. hence  the name RBBS-PC.   RBBS-PC has two fundamental purposes -- to be  a  
  308. catalyst for  the  free  exchange of  information,   and  to  serve  as  an  
  309. educational  example of what can be done with BASIC.  I distribute  RBBS-PC  
  310. under  the  trademark  "Userware" because RBBS-PC is the sure  and  present  
  311. proof that software which is shared becomes better than it  was.    RBBS-PC  
  312. is  the  result of many thousands of man-hours of effort and is what it  is  
  313. today   because  of  the many software contributions  and  suggestions   by  
  314. members  of the Capital PC Users Group and others.   Everyone has something  
  315. that they believe strongly in.  For me it is the "Userware" concept and the  
  316. free   exchange  of  information.    As John Naisbitt states in  his  book, 
  317. MEGATRENDS,
  318.  
  319.          "...the new source of power is not money in the hands of 
  320.          a few, but information in the hands of the many."
  321.  
  322. For this reason I have devoted the time  I  have in writing,   maintaining,  
  323. and  enhancing  RBBS-PC  over the  years.   The  reason   that   I  am  the 
  324. registered copyright owner of RBBS-PC and grant  the  limited  license that 
  325. I do is to primarily insure that these  purposes  are  not abrogated.
  326.  
  327. 1.1 The Capital PC Users Group
  328. ------------------------------
  329. Because the fundamental purposes of RBBS-PC and the Capital PC Users  Group  
  330. are  similar,  I  package  and forward each new version of RBBS-PC  to  the  
  331. CPCUG's Software Exchange for distribution.  The Capital PC User Group is a  
  332. Maryland  Corporation whose "legal name" is the Capital PC User Group  Inc.   
  333. The CPCUG is a non-profit organization according to Section  501C4,  Social  
  334. Welfare,  of  federal law.   All revenues are re-invested in and applied to  
  335. the CPCUG's education programs.
  336.  
  337. 1.2  The "contributions" requested for RBBS-PC
  338. ----------------------------------------------
  339. The "logo" of RBBS-PC requests contributions.  This is because the  RBBS-PC  
  340. may be perceived as an advantage to user-groups,  businesses, or government  
  341. agencies.   It  is  hard to put a value on the RBBS-PC  as it  varies  from  
  342. organization to organization and from time-frame to time-frame.
  343.  
  344. The  first  and  most desirable level of "contribution"  is  public  domain  
  345. software sent to the Capital PC Software Exchange (P.O.  Box  6128,  Silver  
  346. Spring,  MD  20906).   This requires that you or your organization take the  
  347. time  and trouble to document whatever you wish to share.   I would  advise  
  348. you  to  be prepared to convince your organization's legal department  that  
  349. IBM  PC  utilities,  "peeks/pokes",  etc.  are sharable with the  world  in  
  350. general.  Often  these are perceived as  "proprietary" and lawyers tend  to  
  351. view  software contributions to the "public domain" as the needless jeopar- 
  352. dizing of your organization's technical dominance.  This legal myopia over- 
  353. looks the fact that "public domain" software can be used to establish  your  
  354. organization's technical dominance.  If you have a new PC hardware product,  
  355. "public  domain" software that demonstrates it's potential may be just  the  
  356. marketing  strategy  to  create a demand for the product.   If  you  are  a  
  357. consulting  organization,  your  technical reputation may be widely  spread  
  358. through "public domain" software.
  359.  
  360.  
  361.                        Page 6 of 108
  362. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  363.  
  364. If you wish to contribute software but don't wish it to be "public domain,"  
  365. consider  contributing it under a limited license similar to the one  under  
  366. which RBBS-PC is distributed (see section 19).
  367.  
  368. The next level of "contribution" is equipment or services.  Be inventive in  
  369. light of the CPCUG's objectives under 1.1.  If you or your organization can  
  370. donate equipment,  software,  supplies, or services to the CPCUG, feel free  
  371. to  do  so.   If you are so inclined,  but before you do  so,  contact  the  
  372. Capital PC User Group, P.O.  Box 3189, Gaithersburg, MD 20878.  For general   
  373. information  about the appropriateness of the bequest,  contact the Capital  
  374. PC User Group directly.
  375.  
  376. The last level of "contribution" is merely money.   This is the one  commo- 
  377. dity  that we are willing to exchange among each other without first having  
  378. obtained the respect,  consideration,  etc. of the other party.  It is per- 
  379. haps  the  easiest  to give as it exonerates us from the  other  levels  of  
  380. "contribution."   CPCUG is an all volunteer organization  and,  of  course,  
  381. money  is  seldom  plentiful.   However the essence of CPCUG is  the  time,  
  382. ideas,  and effort that each of the volunteers contribute to it.   For this  
  383. reason,  while money is always appreciated,  money is not the best or  even  
  384. the  second-best  type of "contribution" you could  make.
  385.  
  386. Independent of  whether you can donate public domain  software,  equipment,  
  387. services,  supplies, or money, consider becoming a member of CPCUG.  If you  
  388. wish to become a member of CPCUG, simply send your name, address, home/work  
  389. phone numbers along with $25 to CPCUG,  P.O.  Box  3189,  Gaithersburg,  MD  
  390. 20878.
  391.  
  392. If in the final analysis you feel that you can do none of the above,
  393.  
  394.      o remember those who have,
  395.      o enjoy what they have nurtured, and
  396.      o keep the faith with those who have gone before you.
  397.  
  398. 1.3 The "history" behind RBBS-PC
  399. --------------------------------
  400. Electronic  bulletin  board  systems have been around ever  since  personal 
  401. computers  existed.   The  first  ones  were  very  primitive  and  usually 
  402. consisted  of some posted notices and maybe allowed for  on-line  messages.  
  403. It  must be remembered that the IBM PC was only announced in August of 1981 
  404. and  first  became  available in October of  1981.   Therefore  it  is  not 
  405. supprising  that  the  early  history of BBS' is  associated  with  non-IBM 
  406. personal computers.
  407.  
  408. The  "early history" of bulletin board systems began around 1978 in Chicago 
  409. with the CBBS/Chicago (Computerized Bulletin Board System/Chicago).  It was 
  410. created by Ward Christensen and Randy Suess -- members of the Chicago  Area 
  411. Computer  Hobbyist Exchange (CACHE).   CBBS for the CP/M is written in 8080 
  412. Assembler  language  (11,000 lines of it) and,  like the early versions  of 
  413. RBBS-PC (i.e.  prior to CPC12-5A),  detects the baud rate and the parity of 
  414. the  user when he first signs on from the three carriage returns  that  the 
  415. user must enter.
  416.  
  417. About  the  same time,  Bill Abney wrote a BBS for the Radio  Shack  TRS-80 
  418. Models I and II called Forum-80.
  419.  
  420.  
  421.                        Page 7 of 108
  422. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  423.  
  424. The  earliest  BBS that I know of was written for the Apple (who  else  had 
  425. personal computers in those days?) called the "Apple Bulletin Board System" 
  426. (ABBS).   It was written by Craig Vaughn and Bill Blue.  They later created 
  427. another bulletin board  system for the Apple II called the People's Message 
  428. System (PMS).
  429.  
  430. Another  Apple bulletin board system that came into being was for the Apple 
  431. II,  II+,  and  IIE  as  well as the Franklin Ace and  it  was  called  the 
  432. CommuniTree.   It  was  written in the FORTH language by  Dean  Gengle  and 
  433. several others.
  434.  
  435. When  IBM announced its first personal computer,  the IBM PC,  in August of 
  436. 1981,  there was no BBS for it.  In the summer of 1982, Brad Hanson found a 
  437. prototype  version  written  by  Russ Lane in IBM's  BASIC  on  the  Dallas 
  438. R/CPM\CBBS system.   Brad added many fixes and modifications.  In the first 
  439. half  of 1983,  many members of the Capital PC Users Group's  Communication 
  440. Special  Interest Group (SIG) such as Larry Jordan,  Rich  Schinnell,  Gary 
  441. Horwith, Jim Fry, Scot Loftesness, and Dorn Stickle further enhanced it and 
  442. added XMODEM file transfer capability until it became known as RBBS-PC  CPC 
  443. 09  in  May  of  1983.   At  that time each  feature  or  modification  was 
  444. identified  by  a new version number;  it still ran only  under  the  BASIC 
  445. interpreter;  and was both relatively slow (because of the interpreter) and 
  446. somewhat unstable (it would normally "crash" at least once each day).
  447.  
  448. Late  in  May of 1983,  I asked Rich Schinnell if there was any   "bulletin 
  449. board" software available for the IBM PC written in BASIC.  Rich told me to 
  450. give Larry Jordan a call.   Larry said that he was just getting CPC09 ready 
  451. to  send to Rich Schinnel who at that time was Director of the  Capital  PC 
  452. User  Group's  Public Domain Software Library and that I could get it  from 
  453. Rich.   I  did,  and still have the diskette just as Rich sent it to me  -- 
  454. dated June 22, 1983.  
  455.  
  456. Bulletin board systems,  historically were the result of a single person or 
  457. small group of persons' efforts and tended to serve a very narrow  interest 
  458. group  -- typically  those  interested  in the  medium  itself  (i.e.  PCs, 
  459. programming,  communications,  etc.).   This  was true up to and  including 
  460. RBBS-PC  CPC09.   In fact,  most of the incentive to get the public  domain 
  461. versions  of  RBBS  (CPC09 and earlier) functioning was  to  introduce  the 
  462. XMODEM  protocol  to  the  IBM  PC-based  community.   In  this  CPC09  was 
  463. successful  and  may  have  been the primary incentive  for  XMODEM  to  be 
  464. included in PC-TALK at all.
  465.  
  466. Since  June  of 1983 I have authored and released  TWENTY-SIX  versions  of 
  467. RBBS-PC  and distributed them exclusively through the Capital PC User Group 
  468. under  the limited license described in section 19 of  this  documentation.  
  469. At  this  time RBBS-PC appears to have become the "industry  standard"  for 
  470. IBM-type personal computer bulletin board systems.   However, even from the 
  471. very beginning BBSs have excelled whenever:
  472.  
  473.      a.) there was a geographically dispersed audience,
  474.  
  475.      b.) with a need to exchange highly complex/technical information,
  476.  
  477.      c.) in a timely and accurate manner.
  478.  
  479.  
  480.  
  481.                        Page 8 of 108
  482. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  483.  
  484. RBBS-PC's  impact has been to open an entirely new medium of communications 
  485. between people.   Rather than as an end in and of itself,  RBBS-PC has come 
  486. to  serve  as  a  means to an end -- the free  exchange  of  ideas.   On  a 
  487. technical  level  it is certainly an example that shows  "real  programmers 
  488. can/do program in BASIC."  I would like to think that RBBS-PC had something 
  489. to  do  with  IBM and Microsoft coming out with new versions of  the  BASIC 
  490. compiler  that  support  communications,  sub-routines,  local  and  global 
  491. variables, file-locking in a networking environment, etc.
  492.  
  493. RBBS-PC represents a fundamental cornerstone, not just a phase, in what can 
  494. be  viewed  as a "social rennaissance."  The three  areas that I  mentioned 
  495. earlier  in  which  bulletin  boards excel seem  to  ebb  and  flow  within 
  496. communities  and organizations.   RBBS-PC provides an almost  instantaneous 
  497. mechanism  by which these needs can be met.   Many of the Big 8  accounting 
  498. firms  bring up RBBS-PC's just to fulfill one contract so that the  various 
  499. geographically  disbursed  members on the contract can  communicate  across 
  500. time  zones and continents.   Unlike radio,  newspapers,  and television -- 
  501. RBBS-PC provides a vehicle within which information can be EXCHANGED!  That 
  502. is what makes RBBS-PC so unique.   Because the exchange is written,  it  is 
  503. structured.  Because it is structured, it can be thoughtful.
  504.  
  505. The   "social  renaissance"  that  RBBS-PC  represents  is  the  electronic 
  506. elimination of those barriers that had previously inhibited the  "exchange" 
  507. of  information  within  our  society.   RBBS-PC  provides  every  personal 
  508. computer owner with his own "soap-box" in a national Hyde Park.  Previously 
  509. the  channels  of communication had built-in barriers to  "exchange";  with 
  510. RBBS-PC those barriers begin to cease to exist.
  511.  
  512. While  only  the most fanatical RBBS-PC trivia experts may  be  interested, 
  513. I've  gone  back and checked all the documentation and releases of  RBBS-PC 
  514. that I've authored and here is the tedious chronolgy:
  515.  
  516. RBBS-PC Version  Release Date of        Major Enhancements
  517.     Number        First Version
  518.  
  519.    CPC10.0         07/04/83    RBBS-PC first written to be compilable by
  520.                                IBM's BASIC compiler, version 1.0
  521.  
  522.    CPC11.0         08/10/83    RBBS-PC restructured so that all parameters
  523.                                were  external  (i.e.  in  the  RBBS-PC.DEF) 
  524.                                allowing  SYSOPs who didn't want  to  spend 
  525.                                the  $300  for the BASIC compiler to  tailor 
  526.                                RBBS-PC  to  their  taste.   CONFIG.BAS  was 
  527.                                first written to generate RBBS-PC.DEF.
  528.  
  529.    CPC11.1         09/15/83    Jon Martin contributed UTSPACE.OBJ, a sub-
  530.                                routine that allowed the compiled version of 
  531.                                RBBS-PC  to  determine the  amount  of  free 
  532.                                space available for uploading.
  533.  
  534.    CPC11.2         10/01/83    The error trapping within RBBS-PC was 
  535.                                completely    re-written    to    be    more 
  536.                                comprehensive.
  537.  
  538.    CPC12.0         10/28/83    Tree-structured file directories and the
  539.                                ability to detect that RBBS-PC was in a 
  540.  
  541.                        Page 9 of 108
  542. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  543.  
  544. RBBS-PC Version  Release Date of        Major Enhancements
  545.     Number        First Version
  546.                                "MultiLink"  environment were  incorporated.  
  547.                                "MultiLink"  is  a product of  the  Software 
  548.                                Link,  Inc.  which allows DOS 1.1, 2.0, 2.1, 
  549.                                and 3.0 to be "multi-tasking."
  550.  
  551.    CPC12.1         12/18/83    The ability for a SYSOP who signed on
  552. (Versions A-F)                 remotely to drop into DOS was added.  Also
  553.                                the  "New"  command was added  that  allowed 
  554.                                users  to determine what new files had  been 
  555.                                made available since the last time they were 
  556.                                on.
  557.  
  558.    CPC12.2         04/08/84    The security system designed by Ken Goosens
  559. (Versions A-D)                 was incorporated.  RBBS-PC's security system
  560.                                has   an  elegance  unmatched  even  by  the 
  561.                                largest  mainframe.   In  essence  it  is  a 
  562.                                "self-locking lock."  Despite the fact  that 
  563.                                the  RBBS-PC source code is distrbuted  with 
  564.                                RBBS-PC,  the security system within RBBS-PC 
  565.                                that Ken designed has remained unbroken.  Of 
  566.                                course,  SYSOPs  who didn't adhere to  RBBS-
  567.                                PC's   security  structure  have  had  their 
  568.                                system  "crashed"  and  every  SYSOP  should 
  569.                                operate  as  if the very next  caller  could 
  570.                                crash his system.
  571.  
  572.    CPC12.3         11/11/84    This was almost as complete and as major a
  573. (Versions A-B)                 re-write of RBBS-PC as CPC10.0 had been.
  574.                                Beginning  with CPC12.3 up to nine  RBBS-PCs 
  575.                                can share the same files in either a  multi-
  576.                                tasking DOS environment (i.e. MultiLink from 
  577.                                the Software Link,  Inc.) or in a local area 
  578.                                network environment (i.e. Corvus or Orchid).
  579.  
  580.    CPC12.4         03/10/85    RBBS-PC's stature in the industry became
  581. (Versions A,                   recognized when, as author of RBBS-PC, I
  582.  A1, and B)                    was   granted  a  license  by  Microcom   to 
  583.                                incorporate  their proprietary MNP  protocol 
  584.                                into  RBBS-PC.  Almost at the same time many 
  585.                                manufactures recognized the institution that 
  586.                                RBBS-PC  had  become  in  our  industry  and 
  587.                                elected  to include "RBBS-PC  compatibility" 
  588.                                in   their   minimum   criteria   for    the 
  589.                                introduction  of their new products.   RBBS-
  590.                                PC's  Vendor Support Program is  more  fully 
  591.                                explained  in the RBBS-PC documentation  but 
  592.                                one  direct  result of this was  the  intro-
  593.                                duction  of  300/1200/2400 BAUD  support  in 
  594.                                CPC12.4A   before  most  such  modems   were 
  595.                                generally available.
  596.  
  597.    CPC12-5         07/14/85    RBBS-PC was enhanced to  allow 36  copies of
  598.  (Versions A                   RBBS-PC to share the same files in a network
  599.   and B)                       environment.   RBBS-PC automatically answers 
  600.  
  601.                        Page 10 of 108
  602. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  603.  
  604. RBBS-PC Version  Release Date of        Major Enhancements
  605.     Number        First Version
  606.  
  607.                                the phone and no longer requires each caller 
  608.                                to  enter up to 3 carriage returns in  order 
  609.                                for  RBBS-PC to detect the users  baud  rate 
  610.                                and parity.   Logon to RBBS-PC has been made 
  611.                                much  more efficient with the USERS file  no 
  612.                                longer  being searched sequentially and  the 
  613.                                MESSAGES  file  no longer being  read  three 
  614.                                times.   Version  CPC12-5B,  released August 
  615.                                25,  1985, WAS THE LAST VERSION COMPILABLE BY 
  616.                                VERSION  1.0  OF  THE  IBM  BASIC  COMPILER!
  617.  
  618.    CPC13-1                     RBBS-PC   was  completly  rewritten  to   be 
  619.  (Version A)                   compilable  by both the Version 2.0  of  the 
  620.                                IBM  BASIC  compiler ($495 list  price)  and 
  621.                                Microsoft's QuickBASIC Version 1.0 ($99 list 
  622.                                price). XMODEM with CRC was added as a file-
  623.                                transfer protocol as well as the ability  to 
  624.                                display  on  the  color monitor  of  the  PC 
  625.                                running  RBBS-PC the color/graphics that the 
  626.                                remote user sees exactly as he sees them.
  627.  
  628. During  the  evolution  of  RBBS-PC I have had the  distinct  privilege  of  
  629. working   with   many  contributors.    Contributions  have   ranged   from  
  630. suggestions,  to software fixes,  to significant enhancements,  to improved  
  631. documentation.  While I have met very few of these people personally, those  
  632. whose names I remember are:
  633.  
  634.   Randy Brodersen Gary Horwith        Juergen Nordhausen
  635.   Mike Brown      Charlie Innusa      Harvey Pierce
  636.   Rob Cecchino    Loren Jones         Danny Plunkett
  637.   Drew Commins    Larry Jordan        James Reinders
  638.   Everett Delano  Robert Jueneman     Dick Rohrdanz
  639.   Don Dewall      Verne Kallejian     Rich Schinnell
  640.   Jim Fox         Steven Linhart      Mark Seiden  
  641.   Warren Fox      Scott Loftesness    Andrew Silber 
  642.   Asa Fulton      Harry Logan         Carl Spencer
  643.   Jim Fry         Tom Mack            David Staehlin
  644.   Kent Galbraith  Jon Martin          Dorn Stickle      
  645.   John German     Robert Mahoney      Terry Steichen
  646.   Read Gilgen     Sidney Markowitz    Yew Seng Tan
  647.   Ken Goosens     Wes Meier           David Terry 
  648.   Dave Hacquebord Bill Newkirk        Arnold Thomsen
  649.   Steve Harrison                      Clark Walker  
  650.   Gary Hoff                           Robert White
  651.  
  652. To  those  whose names have not been mentioned -- apologies  are  extended.    
  653. Take comfort in knowing that you live on in the work that you have wrought.
  654.  
  655. Jon  Martin is primarily responsible for whatever technical excellence that  
  656. exists in RBBS-PC -- including the ability to have multiple RBBS-PC's share 
  657. the same files.   I am not a programmer and didn't even know BASIC until  I  
  658. started   writing RBBS-PC and released RBBS-PC CPC10.0 in July   of   1983.   
  659. Jon's  commitment to RBBS-PC has at least matched my own.   Despite my  own  
  660.  
  661.                        Page 11 of 108
  662. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  663.  
  664. ineptness,  Jon's patience, understanding, and technical insights have been  
  665. unfailing  over  these several years and,  I would like  to  both  publicly 
  666. acknowledge his contributions to RBBS-PC and  express  my  appreciation for 
  667. his efforts on behalf of RBBS-PC.
  668.  
  669. I'd  also like to mention Ken Goosens' efforts on behalf of  RBBS-PC.   Ken  
  670. took  the  time  and  trouble to wade through the  BASIC  source  code  and  
  671. incorporated  the  "security"  system that  exists  within  RBBS-PC  today.   
  672. Anyone   who   looked  at  the source code prior to release CPC12-2A  can 
  673. appreciate  the  magnitude  of  Ken's  efforts.
  674.  
  675. I  wish  space  allowed me to chronicle the contributions of  each  of  the  
  676. contributors   to  RBBS-PC.    In  an age  of  cynicism,  RBBS-PC  and  the  
  677. Userware  concept  represents an opportunity for each of us to give back to 
  678. the world  something a little better than when we found it.    As I said in 
  679. section  1,  this is something that I believe in strongly.   To each of the 
  680. contributors  to  RBBS-PC  I  would like to say personally
  681.  
  682.          "I am very  proud  of  the company that RBBS-PC keeps."
  683.  
  684. All  changes to RBBS-PC since CPC10.0 have been "ADDITIVE." By that I  mean  
  685. CPC12.5B will run the same way as  CPC10.0.   I felt that users should  not 
  686. be forced to choose between features (i.e.   I can run either the  features 
  687. on CPC11.2 or the features on CPC12.1).  
  688.  
  689. 1.4  RBBS-PC Update Conventions
  690. -------------------------------
  691. RBBS-PC   continues  to evolve and be "debugged."  The   following   coding  
  692. conventions  have been helpful in the past and you are requested to observe  
  693. them in the future: 
  694.  
  695. Updates  consist of two ASCII files.   One called xxxxxx.MOD which are  the  
  696. BASIC  source  statements  for either RBBS-PC.BAS or CONFIG.BAS.  The lines 
  697. that  have been modified are indicated as being so modified with a  comment 
  698. beginning in column 70 in the format as follows:
  699.  
  700. 4330 QUICK.SCAN.MESSAGES = FALSE                             ' CPC131A
  701.  
  702. Because  there  is  no  BASIC interperter as yet compatable  with  the  new 
  703. compilers,  unless  a  modification is only a couple of  lines  the  entire 
  704. source  code  of the program must be supplied.   The second file is  called 
  705. xxxxxx.DOC  which  groups  each modified line number in xxxxx.MOD into  the 
  706. specific  functions added and  describes  the  general feature added or bug  
  707. that  was  fixed.    Obviously  xxxxxx can be anything you wish to name it.   
  708. The  second  file  will me to integrate several .MOD  files   and   resolve  
  709. whatever  conflicts that may exist.
  710.  
  711. The RBBS-PC naming conventions of CPCxx.x are roughly as follows:
  712.  
  713. 1.   If  a "bug" is being fixed CPCxx.x will be given a .MOD file name such  
  714. as  CPC13-1A.MOD  with  a corresponding CPC13-1A.DOC  file  describing  the  
  715. changes  on  a  line number by line number basis.   The  first  version  of  
  716. CPCxx.x  is  always "A".   When you logon to RBBS-PC the  version  will  be  
  717. displayed.
  718.  
  719.  
  720.  
  721.                        Page 12 of 108
  722. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  723.  
  724. 2.   If a new feature or enhancement is added the last digit in the CPCxx.x  
  725. will be incremented by one (i.e. CPC12.2D was followed by CPC12.3A).
  726.  
  727. 3.   If a significant change to source code or logic occurs,  the first two  
  728. digits  of  the  release level will change (i.e.  CPC11.2 was  followed  by  
  729. CPC12.0)   The  purpose of these conventions is to allow everyone  to  know  
  730. what   RBBS-PC level they are running under (users as well as SYSOPs)   and  
  731. understand  the logic behind the changes/fixes as they occur so each  SYSOP  
  732. can evaluate them for his own needs.   If you have comments or fixes please  
  733. let me know so that they can be reflected in the RBBS-PC program and shared  
  734. with all other users.   You can do that by sending your changes by mail to:
  735.  
  736.                               D. Thomas Mack
  737.                           10210 Oxfordshire Road
  738.                         Great Falls, Virginia 22066
  739.  
  740. or uploading the changes to either of my RBBS-PC lines -- (703) 759-5049 or 
  741. (703) 759-9659.
  742.  
  743. While  comments  and  suggestions  are  always  welcome,   those  that  are 
  744. accompanied by the RBBS-PC source code changes that implement them  carry a 
  745. lot more weight than those that don't.
  746.  
  747. 1.5  An Example of "Users Helping Users"
  748. ---------------------------------------
  749. The  ability to have multiple RBBS-PC's running concurrently -- either on a 
  750. single PC in a multitasking DOS environment or in a local area network,  is 
  751. a concrete example of the concept of "users helping users" in action.  This 
  752. ability  was  developed  in support of the efforts of  the  State  of  West 
  753. Virginia Department of Education's "West Virginia Microcomputer Educational 
  754. Network"  project.   It  is the first statewide microcomputer  network  and 
  755. encompasses  all  of  the  state's 1,125 schools  in  55  different  school 
  756. districts.      Each   school  is  intended  to  have  the  capability   of 
  757. accommodating  up  to  twenty IBM PC's in a local area  network  sharing  a 
  758. common  20MB disk drive.   As of June of 1984,  83 of the 1,125 schools had 
  759. such  networks.   Each PC can communicate with either the  LAN,  a  central 
  760. library,  or  with other schools in order to share programs and  materials.  
  761. The key component for this communication is RBBS-PC.   In a presentation at 
  762. the U.S.  Department of Education in Washington,  D.C.on June 22, 1984, the 
  763. role RBBS-PC plays was described as follows:
  764.  
  765.          "The medium that ties the entire system together -- that 
  766.          allows for communication not only between one school and 
  767.          another but also between schools and the central library 
  768.          -- is  an  electronic  bulletin  board  (RBBS-PC)   This 
  769.          bulletin  board will be in operation 24 hours a  day  at 
  770.          the  central  site,  with  a similar bulletin  board  in 
  771.          operation at every school.
  772.  
  773.          The  local  school  bulletin board  (RBBS-PC)  could  be 
  774.          accessed by students who wish to review their lesson  or 
  775.          take  a test at home provided they had  a computer and a 
  776.          modem.   Teachers could access their grade book or other 
  777.          reports and lessons at home in preparation for the  next 
  778.          school day.
  779.  
  780.  
  781.                        Page 13 of 108
  782. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  783.  
  784.          Neither   bulletin  board  system   (RBBS-PC)   requires 
  785.          personnel to answer telephones or transmit files.   They 
  786.          are  both  totally unmanned and operate 24 hours a  day.  
  787.          No  toll  charges,  of course,  would  be  assessed  for 
  788.          calling  the  local school bulletin board and toll  free 
  789.          800 numbers are used for accessing the central library."
  790.  
  791. The State of West Virginia arranged to have the vendors involved,  IBM  and 
  792. Corvus,  make the appropriate equipment available on a "loan" basis so that 
  793. RBBS-PC  could  be developed to work in a local area  network  environment.  
  794. Since  this project conformed so closely to the primary objectives of RBBS-
  795. PC, we agreed to volunteer our time and take on the task of enhancing RBBS-
  796. PC  to  allow  up  to nine (9) copies of RBBS-PC  to  execute  concurrently 
  797. sharing  many  of the same files.   On a single PC the  maximum  number  of 
  798. concurrently running RBBS-PC's within the same DOS is limited only by:
  799.  
  800.         a.  the number of communications ports installed on the PC.  
  801.             IBM's limit is two (COM1 and COM2), but other vendors 
  802.             supply "add-on" cards which provide for up to eight or
  803.             more communications ports on a single PC.
  804.  
  805.         b.  the number of communications ports that the IBM BASIC
  806.             compiler can read and write to.  IBM's limit is two
  807.             (COM1 and COM2).
  808.  
  809.          c. the number of concurrently running tasks that can be
  810.             supported.  IBM's DOS is limited to one task.  Other
  811.             vendors provide "add-on" software to IBM's DOS that
  812.             provides for up to nine simultaneous tasks.
  813.  
  814. Within  a network environment (i.e.  multiple PC's linked together  sharing 
  815. the  same  devices)  the maximum number of concurrent RBBS-PC's is  set  by 
  816. RBBS-PC's internal design to nine (9).   This design was based on the  fact 
  817. that  anyone who wanted to run nine RBBS-PC's sharing the same set of files 
  818. would  take  the  $46,000 needed to buy  nine  PC's  with  modems,  network 
  819. interface cards, hard disk (at least 20MB) and purchase a microcomputer for 
  820. the same amount of money with more ports and storage.  For those interested 
  821. in  further  information  on  the State of  West  Virginia's  Microcomputer 
  822. Educational Network, please contact:
  823.  
  824.                Mr. John E. Cook
  825.                State of West Virginia Department of Education
  826.                1900 Washington Street East
  827.                Building 6, Room 221, Capital Complex
  828.                Charleston, West Virginia  25305
  829.  
  830. 1.6 What's New with CPC13-1A
  831. ----------------------------
  832. CPC13-1A  is a complete and total re-write of the earlier versions of RBBS-
  833. PC.   CPC131-1A  must  be used in conjunction with it's  companion  program 
  834. CONFIG.BAS  -- version  1.9.   Release  CPC13-1A of  RBBS-PC  reflects  the 
  835. capabilities  of  the  two new BASIC compilers for the  IBM  PC  that  were 
  836. announced  in  July of 1985.   Microsoft announced the QuickBASIC  compiler 
  837. with  a  suggested  list price of  $99.   International  Business  Machines 
  838. Corporation  (IBM)  announced Version 2 of the IBM BASIC  compiler  with  a 
  839. suggested list price of $495.
  840.  
  841.                        Page 14 of 108
  842. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  843.  
  844. Both compilers are products of Microsoft. QuickBASIC essentially has 95% of 
  845. the  functionality of IBM's Version 2 BASIC compiler.   QuickBASIC is  100% 
  846. compatable with IBM's Version 2 BASIC compiler.   When you purchase Version 
  847. 2 of the IBM BASIC compiler for approximately $400 more than QuickBASIC you 
  848. get:
  849.  
  850. 1.  An .OBJ module librarian.
  851. 2.  The ability to have arrays larger than 64K.
  852. 3.  The ability to use indexed files (i.e. ISAM).
  853. 4.  Two volumes of well written manuals on the BASIC language.
  854. 5.  The ability to use the Version 1 BASIC compiler's statement
  855.     "CALL ABSOLUTE".
  856.  
  857. Both  products  support  the  full  range  of  capabilities  included  with 
  858. Microsoft's BASIC 2.0 Interpreter.
  859.  
  860. RBBS-PC's  self-imposed  constraint that each version be upward  compatable 
  861. has been extended to be QuickBASIC compatable.   This is because QuickBASIC 
  862. is  100%  compatable with IBM's Version 2 of BASIC  compiler  and  because, 
  863. philosophically,  RBBS-PC  is  founded  on the belief  that  low-cost/high-
  864. quality software should be encouraged wherever possible.
  865.  
  866. RBBS-PC  version  CPC13.1A will run under either the  QuickBASIC  or  IBM's 
  867. Version  2 compiler.   CPC13.1A will not function if compiled using the IBM 
  868. BASIC Compiler version 1.0,  nor will it run under any of the current BASIC 
  869. interpreters.
  870.  
  871. SYSOPS that do not have access to either of the new compilers can run RBBS-
  872. PC  version  CPC13.1A  using  the  RBBS-PC.EXE  and  CONFIG.EXE  files   as 
  873. distributed  and  which are available from many RBBS-PC systems around  the 
  874. world.
  875.  
  876. The new compilers relieved RBBS-PC from having to abide by the  limitations 
  877. of the earlier BASIC compiler.   In so doing RBBS-PC version 13-1A was able 
  878. to  accommodate  many of the enhancements that others had  incorporated  in 
  879. their  versions  of RBBS-PC.   These enhancements had not been included  in 
  880. previous  version of RBBS-PC primarily becuase they violated  the  cardinal 
  881. principle of RBBS-PC -- upward compatability!  
  882.  
  883. Essentially   what   was  felt  to  be  the  best  features  within   three 
  884. fundamentally  different  and incompatable "flavors" of RBBS-PC  have  been 
  885. integrated  into  RBBS-PC  CPC13-1A --- Asa  Fulton's  "X"  versions,  Mark 
  886. Seiden's  "B" versions,  and the .MRG file for RBBS-PC version  12-5B  that 
  887. included the ANSI color and XMODEM/CRC support.
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.                        Page 15 of 108
  902. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  903.  
  904. To  appreciate  the quantum leap that RBBS-PC version CPC13-1A is over  the 
  905. version that immediately preceeded it, CPC12-5B, here are some comparisons:
  906.                  
  907.                                           +----------+----------+
  908.                                           | CPC12-5B | CPC13-1A |
  909. +-----------------------------------------+----------+----------+
  910. |Release date of RBBS-PC versions         |  8/25/85 |  12/1/85 |
  911. |-----------------------------------------+----------+----------+
  912. |Lines of source code (RBBS-PC.BAS)       |      932 |    6,249 |
  913. |-----------------------------------------+----------+----------+
  914. |Size of RBBS-PC.BAS (as an ASCII file)   |   67,661 |  218,752 |
  915. |-----------------------------------------+----------+----------+
  916. |Size of RBBS-PC.EXE (compiled & linked)  |  141,248 |  154,986 |
  917. +-----------------------------------------+----------+----------+
  918.  
  919. The source code provided with CPC13.1A is structured and readable.  This is 
  920. intended to allow stll more enhancements to be incorporated into RBBS-PC by 
  921. even  more  SYSOP's.   Hopefully such enhancements will  reflect  the  same 
  922. quality  and thoroughness that went into David Terry's XMODEM/CRC merge and 
  923. documentation files for RBBS-PC version CPC12-5B.
  924.  
  925. 1.  The source code for RBBS-PC is now approximately 214K.   The reason for 
  926. this huge growth is that every line was broken so that each statement is on 
  927. a separate line.   Also the two letter variable names have been expanded to 
  928. readable phrases.  Line 842 of CPC12-5B looks like:
  929.  
  930.     842 TV!=(TV!+DAY*ET)*60:CH!=0:GOSUB 4910:CJ#=CJ#+1+SH:GOS
  931.     UB 24000:GET 1,NC:MID$(R$,1,31)=FNS$(NAM$,31):MID$(R$,57,
  932.     1)="A":PUT 1,NC:GOSUB 21996:IF SH THEN 900 ELSE SH=(UG>=S
  933.     E)
  934.  
  935. In CPC13-1A, line 842 has become:
  936.  
  937.     842 SECONDS.PER.SESSION! = (MINUTES.PER.SESSION! _ 
  938.                                + LIMIT.DAILY.TIME * ELAPSED.TIME) * 60
  939.         GOSUB 4910
  940.         CALLS.TODATE! = CALLS.TODATE! + 1 + SYSOP
  941.         GOSUB 24000
  942.         GET 1,NODE.RECORD.INDEX
  943.         MID$(MESSAGE.RECORD$,1,31) = FN S$(ACTIVE.USER.NAME$,31)  
  944.         MID$(MESSAGE.RECORD$,57,1) = "A"
  945.         MID$(MESSAGE.RECORD$,60,4) = BAUD.PARITY$   
  946.         PUT 1,NODE.RECORD.INDEX
  947.         GOSUB 21996
  948.         IF SYSOP THEN _
  949.            GOTO 900 _
  950.            ELSE SYSOP = (USER.SECURITY.LEVEL >= SYSOP.SECURITY.LEVEL)
  951.         IF USER.SECURITY.LEVEL < SYSOP.SECURITY.LEVEL THEN _
  952.            GOTO 500
  953.  
  954. 2.  Four types of modem control are now supported.
  955.  
  956.     1.   The  modem  will auto answer and RBBS-PC  will  activate 
  957.          when  carrier  is  present.  This  will  support  modems 
  958.          without the "Ring-Detect" signal.
  959.  
  960.  
  961.                        Page 16 of 108
  962. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  963.  
  964.     2.   The modem will not auto answer and RBBS-PC will activate 
  965.          on  the specified number of rings.  This is like all the 
  966.          version of RBBS-PC prior to CPC12-5A.
  967.  
  968.     3.   Ring-back system for use on non dedicated lines.
  969.  
  970.     4.   Dumb  modems  that auto-answer can now  be  used.   This 
  971.          support  allows  non-Hayes compatible modems  that  only 
  972.          can  auto-answer  to  be used with  RBBS-PC.   The  only 
  973.          limitation   is   that  RBBS-PC  will   be   unable   to 
  974.          automatically  detect the BAUD rate that the user  calls 
  975.          in  at.   Therefore  the  speed at which  the  modem  is 
  976.          initialized,  as  selected in RBBS-PC's CONFIG  program,  
  977.          will  be the only BAUD rate RBBS-PC will recognize  with 
  978.          this type of "dumb" modem.
  979.  
  980. 3.  DOS  2.x  and  abouve sub-directories can be  used  for  downloads  and 
  981. uploads.  RBBS-PC can handle a maximum 99 DOS sub-directories.
  982.  
  983. 4.  Based  on the option the SYSOP selects in RBBS-PC's CONFIG  program,  a 
  984. SYSOP  may elect to restrict access to 1200 Baud and higher and deny access 
  985. to 300 BAUD callers.
  986.  
  987. 5. RBBS-PC now allows the SYSOP to see the color menus on the color monitor 
  988. connected to the PC that is running RBBS-PC in the same manner as they  are 
  989. presented to the remote user.   This requires that the ANSI.SYS supplied by 
  990. IBM  be included in the system's CONFIG.SYS file and that Fred Clark's  and 
  991. Dave  Staehlin's  ANSI.OBJ  be included in the RBBS-PC  link  step.    This 
  992. option is activated by selecting it within RBBS-PC's CONFIG program.
  993.  
  994. 6.  Extended  CALLERS  file logging can be selected from  RBBS-PC's  CONFIG 
  995. program.     The  additional disk storage required for Extended Logging  is 
  996. only worthwhile if you will be using a program to analyze the CALLERS  file 
  997. that recognizes the new entries (such as Call Analyzer version 3.6C). 
  998.  
  999.     Extended logging includes:
  1000.      1) "Connect not completed"
  1001.      2) "Sleep disconnect"
  1002.      3) "Caller changed name/address"
  1003.      4) "Newuser"
  1004.      5) "Bulletin# read"
  1005.      6) "Sysop initiated Chat"
  1006.      7) "Entered Conference name"
  1007.      8) "Time limit exceeded"
  1008.      9) "Left comment at time"
  1009.     10) "Logged off at time"
  1010.  
  1011. 7. CPC13-1A now provides the SYSOP to have a "PRELOG" file.  It must reside 
  1012. on  the same drive as the "welcome" file.   If the file is present the user 
  1013. will be presented the file prior to determining 300 BAUD access allowed and 
  1014. before being asked the users First Name.   This allows the sysop to  inform 
  1015. 300  BAUD  callers  why  they are disconnected or  that  "REAL  NAMES"  are 
  1016. required etc.
  1017.  
  1018.  
  1019.  
  1020.  
  1021.                        Page 17 of 108
  1022. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1023.  
  1024. 8.  CPC13-1A  no longer requires UTILITY.OBJ to be linked with  RBBS-PC.OBJ 
  1025. since  the new compilers provide the functions that UTILITY was being  used 
  1026. for.
  1027.  
  1028. 9.  CALL ABSOLUTE is not valid in the QuickBASIC compiler.  Therefore a new 
  1029. RBBSML.OBJ must be added to the RBBS-PC link step.
  1030.  
  1031. 10.  David  Terry's  Xmodem  CRC for file transfer are  now  supported  and 
  1032. XMODEM.OBJ is required in the link step.
  1033.  
  1034. 11. The SYSOP function key screen at initialization now identifies if:
  1035.  
  1036.     1)  300 BAUD access not allowed
  1037.     2)  Color support activated
  1038.     3)  Extended logging activated
  1039.     4)  Modem waiting for carrier
  1040.     5)  Modem waiting for ring detect
  1041.     6)  Ringback activated
  1042.  
  1043. 12.  The time in CHAT is no longer charged against the users allocated time 
  1044. for the session.
  1045.  
  1046. 13.  Welcome  screens have been added for conferences.   The format is  the 
  1047. conference name + W.DEF.   The file is a text file created by your favorite 
  1048. word  processor.   If  a matching welcome file does not exist RBBS-PC  will 
  1049. continue with no error messages.
  1050.  
  1051. 14.  For  non-networked systems the "UM UU UB UD" on line 25 of  the  SYSOP 
  1052. screen is replaced by the time a user logged on.
  1053.  
  1054. 15.  The  security level of the current user is now displayed on line 25 in 
  1055. front of their name.
  1056.  
  1057. 16.  The SYSOP can now select the action to be taken by RBBS-PC when a DISK 
  1058. FULL condition occurs.
  1059.  
  1060. 17.  The drive ID from which RBBS-PC loads COMMAND.COM must be provided via 
  1061. RBBS-PC's  CONFIG  program.   This  was necessary  for  networks  that  use 
  1062. different versions of DOS from different computer types.
  1063.  
  1064. 18.  The  F2  key usage was changed to give the local SYSOP the ability  to 
  1065. drop to DOS while a user is online.   Control is returned to the user  when 
  1066. the  SYSOP returns from DOS.   RBBS-PC drops to DOS for the local SYSOP  by 
  1067. using  the SHELL command and the SYSOP return from DOS by issuing the  EXIT 
  1068. command.
  1069.  
  1070. 19.  The  W)ho's on the other nodes was enhanced to show the BAUD rates  of 
  1071. the  users on the other nodes.    This will help explain to a user why  the 
  1072. system has slowed down when running in a multi-tasking environment.
  1073.  
  1074. 20. Word wrap has been added to the CHAT function.  This automatic function 
  1075. will move split words down to the next line and continue the chat.
  1076.  
  1077. 21. All references to C/R have been replaced by [ENTER] hopefully this will 
  1078. keep new users from typing C/R instead of just pressing the ENTER key.
  1079.  
  1080.  
  1081.                        Page 18 of 108
  1082. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1083.  
  1084. 22.  All  the prompts to the user have been expanded to make RBBS-PC a more 
  1085. friendly system.
  1086.  
  1087. 23.  Users can now join a conference directly from the main menu.   This is 
  1088. accomplished  by stacking the J)oin command and the name of the  conference 
  1089. at the main menu prompt (i.e. J;BETA101).
  1090.  
  1091. 24.  A user can also join a conference with one command from the conference 
  1092. menu.   This is accomplished by stacking the J)oin command and the name  of 
  1093. the conference at the conference menu prompt (i.e. J;BETA101).
  1094.  
  1095. 25.  When entering a message CHR$(11) and CHR$(12) are screened out and are 
  1096. not  allowed.    This will keep users from having RBBS-PC do unusual things 
  1097. with the local display.
  1098.  
  1099. 26.  Now a user calling back will be given a Welcome back message.  This is 
  1100. like the older versions of RBBS-PC.
  1101.  
  1102. 27.  Because  the Microcom library code was generated by the Lattice C
  1103. compiler, and because  the  Lattice C compiler makes assumptions about how
  1104. data  segments are loaded in memory that are incompatible with the way the
  1105. LINKer supplied with the QuickBASIC compiler, MNP is regretably unavailable
  1106. with  RBBS-PC version CPC13-1A.  Hopefully this is only temporary.
  1107.  
  1108. 28.  When  a  remote  SYSOP makes a temporary password  change  is  is  now 
  1109. recorded as "********".
  1110.  
  1111. 29.  All the modem commands are external to RBBS-PC.BAS and are included in 
  1112. the RBBS-PC.DEF file.   This file can be edited by any editior (i.e. EDLIN) 
  1113. and  these  commands  can  be changed to reflect the  requirements  of  the 
  1114. particular modem that is being used with RBBS-PC.
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.  
  1130.  
  1131.  
  1132.  
  1133.  
  1134.  
  1135.  
  1136.  
  1137.  
  1138.  
  1139.  
  1140.  
  1141.                        Page 19 of 108
  1142. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1143.  
  1144. 2.0 RBBS-PC "BASE-LINE" HARDWARE REQUIREMENTS
  1145. ---------------------------------------------
  1146. RBBS-PC  CPC13-1A  is designed to run on an IBM Personal  Computer  running  
  1147. IBM's  Disk Operating System (DOS),  communicating via an IBM  Asynchronous  
  1148. Communications Adapter and a Hayes Smartmodem modem.  For RBBS-PC  CPC13-1A
  1149. the following equipment and software is the MINIMUM recommended:
  1150.  
  1151.                IBM PC 
  1152.                80 column monitor
  1153.                Asynchronous communications  adapter (serial port)
  1154.                Hayes Smartmodem (or 100% Hayes compatible!)
  1155.                Voice  grade  telephone connection  for  modem
  1156.                25 pin RS-232-C modem  cable  (for stand alone modem)
  1157.                192K RAM 
  1158.                Two double-sided drives
  1159.                PC-DOS 2.0 or higher
  1160.  
  1161. RBBS-PC  can  be run in either a single  double-sided drive or two  single- 
  1162. sided drive configuration.   However,  the less disk space  available   the  
  1163. more file maintenance the SYSOP  must do.   The majority of RBBS-PC systems 
  1164. utilize  hard disks primarily because the price of such devices have become 
  1165. so low (i.e. a 10MB internal drive can cost as little as $400).
  1166.  
  1167. If  you  have  a  second telephone installed specifically for RBBS-PC,  ask 
  1168. for  a second voice  grade telephone line.   Data lines are very  expensive 
  1169. and  are  not  necessary.   The   program  requires  the  use  of  a  Hayes  
  1170. Smartmodem  (or  one that is 100% Hayes compatable) in order  to   function 
  1171. properly.   If your non-Hayes modem doesn't work with RBBS-PC, send RBBS-PC 
  1172. (source  code and all) to the vendor and ask him to expalin why it  doesn't 
  1173. work (i.e. why it is "incompatable" with the Hayes smartmodems). 
  1174.  
  1175. Callers who come in at even parity and 7 data bits,  then try to change  to  
  1176. no   parity  and  8 data bits to use XMODEM,  may have a problem  if   they  
  1177. are  using PC-TALK and a Hayes Smartmodem.   Switch 1 on the caller's modem 
  1178. has  to  be down (the factory  default  position)  or the carrier  will  be 
  1179. dropped when  the  communication  parameters  are  switched.  To avoid this 
  1180. the  PC-TALK caller will  have  to  enter the escape code (factory  setting 
  1181. "+++"),   reset the modem  parameters  with  Alt-P and/or Alt-F,   and then 
  1182. return  to the "connect" state with  the  command  "ATO." Callers who  wish 
  1183. to  communicate at 450 baud have to call in  at  300  baud  then switch  to 
  1184. 450 using the N)ew baud  selection  from  the  "Utilities" menu.
  1185.  
  1186. Beginning  with version CPC12-5B,  RBBS-PC  does not require PIN 22  to  be 
  1187. hooked  up on the RS-232-C cable (that's the  cable  which runs between the 
  1188. modem and the computer).  If you specify in option 9 of CONFIG that RBBS-PC 
  1189. is to answer the phone on a specified number of rings (and that it is not a 
  1190. RING-BACK  system),  RBBS-PC  will initialize the modem so that  the  MODEM 
  1191. automatically  answers the phone.   Otherwise the default with CPC13-1A  is 
  1192. that  RBBS-PC depends on PIN 22 to know when the phone is ringing and RBBS-
  1193. PC (NOT the modem) answers the phone.
  1194.  
  1195. In  order for RBBS-PC to answer the phone on a specified ring  number,  the 
  1196. modem  must send a "ring-indicator" signal to to RBBS-PC.   This is the way 
  1197. that RBBS-PC detects that the phone is ringing.   Some computers (i.e.  the 
  1198. PCjr's external RS232 interface) and some modem cables don't have a  "ring-
  1199. indicator" signal.   PIN 22 is the  ring  indicator  coming  from the modem 
  1200.  
  1201.                        Page 20 of 108
  1202. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1203.  
  1204. going  to  the  computer.  Just because you bought an  RS232  cable,  don't 
  1205. assume  that it has PIN 22 connected.   The $55 12-pin RS232 cable sold  by 
  1206. many computer stores often may not have PIN 22 connected.  For about $18 in 
  1207. parts  from Radio Shack you can put together your own RS232 cable with  all 
  1208. the   pins  connected.   Recently a friend of mine paid  $14.88  (including 
  1209. postage)  for  a RS232 cable with all the pins connected by  ordering  part 
  1210. number  CDB25P-4-S from Jameco Electronics.   Jameco Electronics' telephone 
  1211. number is (415) 592-8097.
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.                        Page 21 of 108
  1262. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1263.  
  1264. 3.0 RBBS-PC's Support Policies
  1265. ------------------------------
  1266. 3.1 RBBS-PC's Vendor Support Policy
  1267. -----------------------------------
  1268. The  only reason RBBS-PC is "hardware-specific" to the IBM PC and the Hayes  
  1269. Smartmodem is that these have pretty much set an industry standard   (let's 
  1270. not   debate  the  issue  of whether they have  also  set  a   "technology"  
  1271. standard).  If you follow the code in RBBS-PC closely, you will notice that  
  1272. a great deal of effort was expended in order not to be "hardware-dependent"  
  1273. on either the Hayes or the IBM PC.
  1274.  
  1275. The   purposes  of  RBBS-PC are outlined in section  1.0   of  the  RBBS-PC 
  1276. documentation.   Those  who  contribute  to  RBBS-PC do so without any hope  
  1277. of  monetary  reward.    In fact,  great lengths are taken to  assure  that 
  1278. neither  those  involved  with the development of RBBS-PC nor  anyone   who  
  1279. distributes   RBBS-PC  does so for either personal gain or  to  promote   a  
  1280. specific product at the expense of other products.
  1281.  
  1282. If  the hardware you are using is not part of the "base-line" hardware  and  
  1283. RBBS-PC  doesn't  work,  your only recourse is to either modify RBBS-PC  to  
  1284. meet  your  particular  hardware's needs (that's why  the  source  code  is  
  1285. distributed)  or  contact  your vendor and ask him to fix his  hardware  or  
  1286. modify RBBS-PC (via .MOD/.DOC files) to support his hardware.
  1287.  
  1288. Since  1984 RBBS-PC  became something of an "industry standard."   As  such 
  1289. several  manufacturers  have requested that support for  their   particular  
  1290. hardware  and/or software be incorporated into RBBS-PC.  These vendors have 
  1291. had three choices:
  1292.  
  1293. 1.  Obtain  a  copy  of the BASIC source code by  sending  $8  to  the 
  1294.     Capital PC User Group's Software Exchange.  The source code allows 
  1295.     the   vendor  to  determine  what  is  required  to  be   "RBBS-PC 
  1296.     compatible."   Who   better   knows    the    quirks    of     the  
  1297.     manufacturer's  product than the manufacturer?   RBBS-PC's limited 
  1298.     license  specifically  permits the  distribution of  ".MOD"  files 
  1299.     that  would allow RBBS-PC to run with whatever  idiomatic   quirks   
  1300.     a  specific  vendor's  product exhibited.   The advantage  to  the 
  1301.     manufacturer  is that he is in complete control and need not  make 
  1302.     the .MOD "universal" (i.e. it need only support his product).  The 
  1303.     disadvantage is that new releases of RBBS-PC come out every six to 
  1304.     eight  weeks and the vendor would have to review each  release  to 
  1305.     make sure the new releases and his .MOD files were compatible.  Of 
  1306.     course,  as  with  any other RBBS-PC  operator,  casual  telephone 
  1307.     support is available to these vendors.
  1308.  
  1309. 2.  Supply the necessary equipment or software on a loan or gift basis 
  1310.     to  be  used in the testing of future releases of  RBBS-PC.   This 
  1311.     approach  has  been  actively DISCOURAGED  for  three  fundamental 
  1312.     reasons.
  1313.  
  1314.     First,  the vendor perceives he has "paid" for on-going support by 
  1315.     the loan or donation of the product.  This is not the case because 
  1316.     RBBS-PC's  development  is an all-volunteer  activity.   As  such, 
  1317.     neither  I nor any of the others involved with the development  of 
  1318.     RBBS-PC  may  have  the time nor expertise  sufficient  to  assure 
  1319.     compatibility  of  the  specific  vendor's  product  with   future 
  1320.  
  1321.                        Page 22 of 108
  1322. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1323.  
  1324.     releases  of RBBS-PC.   About all that can be done is to give  the 
  1325.     vendor our "best effort" to assure compatibility,  and advise when 
  1326.     it can not be made compatible.
  1327.  
  1328.     Second,   the   particular  product  may  not  have  a   universal 
  1329.     applicability  to RBBS-PC users and (or) may not be of interest to 
  1330.     those  who  regularly contribute to the  development  of  RBBS-PC.   
  1331.     Both of these conditions must exist before any vendor's product is 
  1332.     incorporated into the RBBS-PC development cycle.
  1333.  
  1334.     Third, the price of the loaned or donated products (usually 3 to 5 
  1335.     such  products)  in  no way can even begin to compensate  for  the 
  1336.     hundreds  (if  not  thousands) of development  hours  required  to 
  1337.     support other than "base-line" hardware. 
  1338.  
  1339. 3.  Establish  an  on-going  institutional commitment  to  maintain  a 
  1340.     dialogue  between  the vendor's engineering group and the  RBBS-PC 
  1341.     development  team along with supplying the necessary equipment  or 
  1342.     software  on  a loan or gift basis to be used in  the  testing  of 
  1343.     future  releases  of  RBBS-PC.   This approach has  been  actively 
  1344.     ENCOURAGED for three different and fundamental reasons.
  1345.  
  1346.     First,  the  vendor overtly makes an institutional  commitment  to 
  1347.     jointly participate in the development of RBBS-PC.  The vendor has 
  1348.     the  opportunity to supplement the all-volunteer activity that  is 
  1349.     the  basis  for RBBS-PC development by choosing to  either  modify 
  1350.     their  current or future products to be compatible with RBBS-PC or 
  1351.     to supply software that ensures compatibility with RBBS-PC.   This 
  1352.     benefits all RBBS-PC users.
  1353.  
  1354.     Second,  the particular products that fall into this category  are 
  1355.     required  to have a universal applicability to RBBS-PC users (i.e. 
  1356.     multi-tasking DOS,  networking,  2400 or greater baud  capability, 
  1357.     error-free protocols,  etc.).  Also a regular contributor to RBBS-
  1358.     PC's  development  must  be geographically located  close  to  the 
  1359.     vendor's  development  engineers  to  assure  a  timely  dialogue.  
  1360.     Further  any  regular  contributor to  RBBS-PC's  development  who 
  1361.     accepts  the  responsibility for assuring RBBS-PC's  compatibility 
  1362.     with a particular vendor's product must be willing to do so solely 
  1363.     on a volunteer basis over an extended period of time and in such a 
  1364.     way  as  not to exclude other vendor's products.   Only  when  all 
  1365.     these  conditions exist is any vendor's product a candidate to  be 
  1366.     incorporated  into the RBBS-PC development  cycle.   This  assures 
  1367.     that  the RBBS-PC user community has a feed-back mechanism to  the 
  1368.     vendor's  product  development and design teams and the vendor  is 
  1369.     assured  of  a  matching long-term  commitment  from  the  RBBS-PC 
  1370.     development team.
  1371.  
  1372.     Third,  the  vendor  recognizes that the  price of the  loaned  or 
  1373.     donated  products  (usually  3 to 5 such  products)  is  minuscule 
  1374.     compared  with  the hundreds (if not thousands) of man-hours  that 
  1375.     may be required  from both the RBBS-PC development team as well as 
  1376.     the vendor's engineers.   This assures that the vendors who choose 
  1377.     this third approach are committed to the PC user community.  It is 
  1378.     precisely this type of commitment that RBBS-PC's USERWARE  concept 
  1379.     is designed to encourage (from both users and vendors)
  1380.  
  1381.                        Page 23 of 108
  1382. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1383.  
  1384. Vendors  who  have chosen to make this third type of commitment to  RBBS-PC 
  1385. and the PC user community deserve the respect and encouragement of every PC 
  1386. user and are (alphabetically):
  1387.  
  1388.     Ark Electronic Products, Inc.
  1389.     325 W. Hibiscus Blvd.
  1390.     Melbourne, Florida  32901
  1391.     (305) 724-5260 
  1392.  
  1393.     Corvus Systems, Inc.
  1394.     2100 Corvus Drive
  1395.     San Jose, California 95124
  1396.     (408) 559-7000
  1397.  
  1398.     Hayes Microcomputer Products, Inc.
  1399.     5923 Peachtree Industrial Blvd.
  1400.     Norcross, Georgia  30092
  1401.     (404) 449-8791
  1402.  
  1403.     International Business Machines Corporation
  1404.     (Internal Zip Code 2900)
  1405.     P.O. Box 1328
  1406.     Boca Raton, Florida  33432
  1407.     (305) 998-2000
  1408.  
  1409.     Microcom, Inc.
  1410.     1400A Providence Highway
  1411.     Norwood, MA  02062
  1412.     (617) 762-9310
  1413.  
  1414.     Multi-Tech Systems, Inc.
  1415.     82 Second Avenue, S.E.
  1416.     New Brighton, Minnesota  55112
  1417.     (612) 631-3550
  1418.  
  1419.     Orchid Technology
  1420.     4790 Westinghouse Drive
  1421.     Fremont, CA 94539
  1422.     (415) 490-8586
  1423.  
  1424.     Prometheus Products Incorporated
  1425.     4545 Cushing Parkway
  1426.     Fremont, CA  94538
  1427.     (415) 490-2370
  1428.  
  1429.     Racal-Vadic
  1430.     1525 McCarthy Blvd.
  1431.     Milpitas, California 95035
  1432.     (408) 774-0810
  1433.  
  1434.     The Software Link, Inc.
  1435.     8601 Dunwoody Place
  1436.     Suite 336
  1437.     Atlanta, GA  30338
  1438.     (404) 998-0700
  1439.  
  1440.  
  1441.                        Page 24 of 108
  1442. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1443.  
  1444. Users  who feel that they have benefited or who appreciate such  commitment 
  1445. to  the user community should write or call the above vendors and tell them 
  1446. so,  especially  if  such  a commitment influenced the  purchase  of  their 
  1447. products.   Similarly,  if  any user feels that other vendor should make  a 
  1448. similar commitment to RBBS-PC and the user community,  write to that vendor 
  1449. and send a copy of your letter to the following address:
  1450.  
  1451.                         D. Thomas Mack
  1452.                         10210 Oxfordshire Road
  1453.                         Great Falls, Virginia 22066
  1454.  
  1455. APPENDIX  B  describes  the RBBS-PC specifications  for  those  vendors  of 
  1456. proprietary  protocols who would like to have them added to future releases 
  1457. of RBBS-PC.  
  1458.  
  1459. 3.2 RBBS-PC's User Support Policy
  1460. ---------------------------------
  1461. RBBS-PC is an all-volunteer effort on my part.   Professionally I am not  a 
  1462. programmer (as anyone who has looked at the source code can testify) nor an 
  1463. "expert/guru" on personal computers.  Since I am not independently wealthy, 
  1464. I have a full time job (unrelated to PC's).   As with most other folks, I'm 
  1465. also  busy  raising  a  family.   What time I can spare  from  these  other 
  1466. activities  I  am  glad to donate to answer questions about  RBBS-PC  as  I 
  1467. believe (somewhat fanatically) in the Userware concept.
  1468.  
  1469. However,  if  you have questions regarding something other than the  "base-
  1470. line"  hardware  and software requirements outlined in section  2.0,  DON'T 
  1471. CALL  ME.   I probably can't help you anyway and even if I do venture  some 
  1472. advice  it  will probably be wrong.   One of the axioms of  the  "Userware" 
  1473. concept is that every user should be able to help themselves -- that's  why 
  1474. there are 108 pages of documentation and the source code is distributed.
  1475.  
  1476. The only calls that I truly appreciate are those that reveal BOTH a problem 
  1477. and  a solution.   These I am more than happy to share with anyone and  are 
  1478. included in RBBS-PC (either the documentation,  the software,  or both)  as 
  1479. rapidly as possible. Of course, if you encounter a problem and
  1480.  
  1481.      1.  read and re-read the documentation, 
  1482.      2.  spend  days  and days attempting to isolate it,
  1483.      3.  called other  SYSOP's  and asked  their help,
  1484.      4.  looked up any error messages you encountered (they are in the 
  1485.          BASIC manual that comes with your IBM PC's DOS),
  1486.      5.  know what version of RBBS-PC that you are running,
  1487.      6.  know what version of CONFIG that you are running,
  1488.      7.  eliminated all other software from your environment,
  1489.  
  1490. and  still can not get RBBS-PC to work,  I am most happy to  lend  whatever 
  1491. telephone  advice I can.
  1492.  
  1493. In  this regard,  it may help to remember that there are only two types  of 
  1494. problems  -- MY  problems (which are the ones that I can solve)  and  OTHER 
  1495. PEOPLE's problems (which are the ones that I can't solve).
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.                        Page 25 of 108
  1502. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1503.  
  1504. 4.0 OPERATING SYSTEM REQUIREMENTS
  1505. ---------------------------------
  1506. Beginning  with RBBS-PC version CPC13-1A,  RBBS-PC requires version 2.0  or 
  1507. above of IBM's Disk Operating System (DOS).  RBBS-PC will not run under the 
  1508. BASIC  interpreter.   Nor is it reasonable to expect that RBBS-PC would run 
  1509. under ANY other DOS supplied by any other vendor (including Microsoft).  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.  
  1526.  
  1527.  
  1528.  
  1529.  
  1530.  
  1531.  
  1532.  
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.                        Page 26 of 108
  1562. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1563.  
  1564. 5.0 HOW TO GET A COPY OF RBBS-PC SENT TO YOU
  1565. --------------------------------------------
  1566. RBBS-PC  can be obtained by sending a  check  for  $8 to the
  1567.  
  1568.                Capital PC Software Exchange
  1569.                P.O. Box 6128
  1570.                Silver Spring MD 20906.
  1571.  
  1572. RBBS-PC is distributed on two double-sided, 9-sector, diskettes. Allow 3 to
  1573. 4 weeks for delivery -- remember this is an all-volunteer effort.   Be sure 
  1574. to specify RBBS-PC CPC13-1A on "diskette # 18".
  1575.  
  1576. The  exigencies  of  RBBS-PC software releases may mean  that  diskette  18  
  1577. contains  an  earlier version of RBBS-PC than CPC13-1A (either  you  bought  
  1578. diskette 18 sometime ago or there has been not enough time for diskette  18 
  1579. to  be updated to this most current version).    Not to fear!   Your $8 has  
  1580. not   been  wasted.    At least two bulletin boards keep the  most  current 
  1581. copies of  RBBS-PC CPC13-1A for downloading.  They are: 
  1582.  
  1583. (703) 759-5049 --+
  1584.                  +---- East Coast (Great Falls, Virginia), 
  1585. (703) 759-9659 --+
  1586.  
  1587. (415) 689-2090 ------- West Coast (Concord, California).
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.  
  1603.  
  1604.  
  1605.  
  1606.  
  1607.  
  1608.  
  1609.  
  1610.  
  1611.  
  1612.  
  1613.  
  1614.  
  1615.  
  1616.  
  1617.  
  1618.  
  1619.  
  1620.  
  1621.                        Page 27 of 108
  1622. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1623.  
  1624. 6.0 FILES RBBS-PC USES
  1625. ----------------------
  1626. There  are essentially two types of files that RBBS-PC uses -- "system" and 
  1627. "text"  files.   "System"  files are defined as random files  that  RBBS-PC 
  1628. reads  and  writes  to.   "Text" files are defined as  files  that  RBBS-PC 
  1629. primarily reads from.   Text files can be edited externally to RBBS-PC with 
  1630. most  text editors that can handle ASCII files.  Either type of file can be 
  1631. "static" or "variable" in length.  By "static" it is meant that these files 
  1632. have  a  pre-defined  length beyond which RBBS-PC  does  not  extend  them.  
  1633. Similarly,  "variable" length files are defined as those files whose length 
  1634. is  dynamically  increased by RBBS-PC.   In a multiple RBBS-PC  environment 
  1635. only the "static" length files can be shared SAFELY among the various RBBS-
  1636. PC's.   The following table summarizes, using the default file names, which 
  1637. categories the various RBBS-PC files fall into:
  1638.  
  1639.         "Static" Length Files       "Variable" Length Files 
  1640.   -----
  1641.    /|\    MESSAGES                      CALLERS
  1642.   System  USERS                         COMMENTS
  1643.   Files   MESSAGES.BAK                  99.DIR (upload directory)                 
  1644.    \|/    USERS.BAK                     upload disk   
  1645.   -----   RBBSxPC.DEF                   
  1646.   -----   BULLET                     
  1647.    /|\    BULLET1 --> BULLETn
  1648.     |     DIR.DIR                          
  1649.     |     aa.DIR  --> bb.DIR            
  1650.   Text    FILESEC and PASSWRDS         
  1651.   Files   HELP01  --> HELP08           
  1652.     |     MENU1   --> MENU5
  1653.     |     NEWUSER
  1654.     |     PRELOG                     
  1655.    \|/    TRASHCAN & CONFENCE                   
  1656.   -----   WELCOME                       
  1657.  
  1658. In  a CORVUS network environment some of the "static" length files  can  be 
  1659. shared  on  a common volume and ALL of the "variable" length files must  be 
  1660. segregated on volumes unique to each copy of RBBS-PC.   RBBS-PC issues  the 
  1661. NAME function of BASIC in order to determine if a file exists.   Because of 
  1662. this,  all  the volumes accessed by any RBBS-PC in a CORVUS network must be 
  1663. designated "read/write." Therefore,  you must be very careful when  running 
  1664. CONFIG.BAS.  CONFIG creates the definition file (RBBSxPC.DEF) for each copy 
  1665. of  RBBS-PC.   In  a CORVUS network you should arrange the location of  the 
  1666. RBBS-PC files as follows:
  1667.  
  1668.        Shareable RBBS-PC Files in a    Non-shareable RBBS-PC Files in a
  1669.        CORVUS network (i.e. on a       CORVUS network (i.e. each RBBS-PC
  1670.        common volume)                  has a volume dedicated to it)
  1671.  
  1672.   -----                                CALLERS
  1673.    /|\    MESSAGES                     COMMENTS
  1674.   System  USERS                        99.DIR (upload directory)
  1675.   Files   MESSAGES.BAK                 upload disk
  1676.    \|/    USERS.BAK                    RBBSxPC.DEF
  1677.   ----- 
  1678.  
  1679.  
  1680.  
  1681.                        Page 28 of 108
  1682. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1683.  
  1684.        Shareable RBBS-PC Files in a    Non-shareable RBBS-PC Files in a
  1685.        CORVUS network (i.e. on a       CORVUS network (i.e. each RBBS-PC
  1686.        common volume)                  has a volume dedicated to it)
  1687.  
  1688.   -----
  1689.    /|\    BULLET                      
  1690.     |     BULLET1 --> BULLETn
  1691.     |     DIR.DIR                          
  1692.     |     aa.DIR  --> bb.DIR            
  1693.   Text    FILESEC and PASSWRDS          
  1694.   Files   HELP01  --> HELP08          
  1695.     |     MENU1   --> MENU5
  1696.     |     NEWUSER
  1697.     |     PRELOG                     
  1698.    \|/    TRASHCAN & CONFENCE                    
  1699.   -----   WELCOME         
  1700.  
  1701. In  a MultiLink (from the Software Link,  Inc.) environment and in Orchid's 
  1702. PC-NET environment the vendors claim that not only all the "static"  length 
  1703. files  can  be  shared on a common volume but also some of  the  "variable" 
  1704. length files can be shared.  However,  if you want to be as conservative as 
  1705. possible,  run  RBBS-PC  in ALL environments as if it where  running  in  a 
  1706. CORVUS network environment.  However, if you rely on the vendors claims, in 
  1707. either  a  MultiLink or PC-NET environment,  when running CONFIG.BAS  which 
  1708. creates  the definition file (RBBSxPC.DEF) for each copy  of  RBBS-PC,  you 
  1709. must be careful to arrange the RBBS-PC files as follows:
  1710.                  
  1711.        Shareable RBBS-PC Files in a    Non-shareable RBBS-PC Files in a
  1712.        MultiLink or PC-NET enviro-     MultiLink or PC-NET environment
  1713.        nment (i.e. shared on a         (i.e. each RBBS-PC has a volume
  1714.        common volume)                  with these files dedicated to it)
  1715.  
  1716.   -----                               
  1717.    /|\    MESSAGES, MESSAGES.BAK        CALLERS
  1718.     |     USERS, USERS.BAK
  1719.   System  COMMENTS 
  1720.    Files  99.DIR (upload directory)
  1721.     |     upload disk
  1722.    \|/    RBBS-PC.DEF                  
  1723.   -----
  1724.   -----   BULLET                      
  1725.    /|\    BULLET1 --> BULLETn
  1726.     |     DIR.DIR                          
  1727.     |     aa.DIR  --> bb.DIR
  1728.   Text    FILESEC and PASSWRDS          
  1729.   Files   HELP01  --> HELP08          
  1730.     |     MENU1   --> MENU5
  1731.     |     NEWUSER
  1732.     |     PRELOG                     
  1733.    \|/    TRASHCAN & CONFENCE                    
  1734.   -----   WELCOME         
  1735.  
  1736.  
  1737.  
  1738.  
  1739.  
  1740.  
  1741.                        Page 29 of 108
  1742. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1743.  
  1744. 6.1  RBBS-PC System Files
  1745. -------------------------
  1746. As shown above, "system" files are both static and variable in length.  The 
  1747. system files used by RBBS-PC are:
  1748.  
  1749. MESSAGES  - This  file is a random file that contains the message text  for  
  1750. the   RBBS-PC system.    The first record in the file contains the  RBBS-PC 
  1751. "checkpoint"  record.   The records immediately following this first record 
  1752. are  the RBBS-PC "node" records.  The rest of the file consists of  message  
  1753. header   records   which   are  followed by the  message  text   for   that  
  1754. header.   Appendix A describes the fields and their uses within the various 
  1755. type of records of the messages file.  RBBS-PC expects the MESSAGES file to 
  1756. exist and to have been created by CONFIG.BAS.   If CONFIG.BAS does not find 
  1757. the MESSAGES file or it finds one in pre-CPC12-3A format, it will create it  
  1758. and  initialize it to the size the SYSOP specifies.   Because of the  fixed 
  1759. length  records in  this file,   it should not be created or edited outside 
  1760. RBBS-PC.    When   the  SYSOP  "packs" the message file  using  CONFIG.BAS,  
  1761. the  file  MESSAGES.BAK is created to  hold  the old messages in  case  the 
  1762. "pack" is unsuccessful (i.e.  not enough space  to  duplicate  the  message 
  1763. file).   If  the  disk fills up  during  the  pack  function  RBBS-PC  will 
  1764. recover  the  message file using MESSAGES.BAK.  When the messages  file  is 
  1765. successfully packed,  the pre-packed messages file is renamed  MESSAGES.OLD 
  1766. and  the  temporary file MESSAGES.BAK is renamed MESSAGES.    The  MESSAGES 
  1767. file  should only be "packed" in a multiple RBBS-PC environment when  there 
  1768. are  no  RBBS-PCs active.   The MESSAGES file can be shared among  multiple 
  1769. RBBS-PCs.
  1770.  
  1771. USERS  - The USERS file is a random access file that has a record for  each  
  1772. user who used the system.   The record contains a profile for each user who 
  1773. has  logged onto RBBS-PC.   Appendix A describes the format of the  records 
  1774. within  the  USERS  file.   The records are 128 bytes  in  length  and  are 
  1775. automatically  maintained  by  RBBS-PC.    The  SYSOP  can do some  limited  
  1776. editing   using  SYSOP function 5.   To initialize the system simply  ERASE 
  1777. this file.    RBBS-PC expects the USERS file to exist.  If  CONFIG.BAS does  
  1778. not  find the file on the system it will create it to the size specified by 
  1779. the  SYSOP.   The   USERS  file   should  not be created or edited  outside 
  1780. CONFIG.BAS.   When the SYSOP  "packs"  the user file using CONFIG.BAS,  the 
  1781. file  USERS.BAK  is created to hold the old users in case  the   "pack"  is 
  1782. unsuccessful (i.e.   not enough space to duplicate the  users  file).    If 
  1783. the disk fills up during the pack function RBBS-PC will recover  the  USERS 
  1784. file with USERS.BAK.   When the users file is successfully packed, the pre-
  1785. packed  users file is renamed USERS.OLD and the temporary file USERS.BAK is 
  1786. renamed USERS. The USERS file should only be "packed" in a multiple RBBS-PC 
  1787. environment  when  there are no RBBS-PC's active.   The USERS file  can  be 
  1788. shared among multiple RBBS-PC's.
  1789.  
  1790. CALLERS - This file is a random file that contains a log of all callers  as  
  1791. they log on to the system along with callers city and state,  the date  and 
  1792. the  time.    The names are added to the end of the file as well as are the 
  1793. names   of  the files uploaded/downloaded by the caller.    If the file  is 
  1794. not  found   RBBS-PC will create a new one.   The file should be ERASED  to 
  1795. clear the log.  The CALLERS file cannot be shared among multiple RBBS-PC's.
  1796.  
  1797. COMMENTS  - This file is a sequential file that contains any comments  that  
  1798. have been left by users for the SYSOP.   The file can be scanned by a SYSOP  
  1799. function  or it can be TYPEd or edited outside the RBBS  system.   A  SYSOP  
  1800.  
  1801.                        Page 30 of 108
  1802. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1803.  
  1804. function is available to delete this file,  or it can be emptied outside of  
  1805. DOS.    The  file  will  be created by RBBS-PC if it  is  not  found.   The 
  1806. COMMENTS  file  cannot be shared among multiple  RBBS-PC's  using  CORVUS's 
  1807. "OMNINET".  This file can be shared using MultiLink or Orchid.
  1808.  
  1809. 99.DIR   - The  file  on the upload disk that is to have  the  name,   file  
  1810. size,   date,  and  description  appended  to it of files  that  have  been 
  1811. uploaded.   The 99.DIR file cannot be shared among multiple RBBS-PC's using 
  1812. CORVUS's "OMNINET", but can be shared using MultiLink or Orchid.
  1813.  
  1814. RBBS-PC.DEF  - This  is  an  ASCII  text file  created  as  output  by  the  
  1815. CONFIG.BAS file.  It contains the configuration parameters for the RBBS. It  
  1816. is  read by RBBS to determine the configuration settings tailored  to  your  
  1817. RBBS- PC.   In  a multiple RBBS-PC environment the definition file for each 
  1818. RBBS-PC is named RBBSxPC.DEF where "x" is a number 1 through 9 , 0 (for the 
  1819. tenth  copy),  and  A  through  Z  (for the  eleventh  through  36th  copy) 
  1820. corresponding to which copy RBBS-PC it describes.
  1821.  
  1822. In  a multiple RBBS-PC environment,  (i.e.  using "OMNINET")  each  RBBS-PC 
  1823. should  have  a unique volume that the other RBBS-PC's should not write  to 
  1824. (they  may read from) on which to write  it's  CALLERS,  COMMENTS,  99.DIR, 
  1825. RBBSxPC.DEF,  and  file uploads.   In an "OMNINET" network with four  RBBS-
  1826. PC's,  the disk volumes would all have to allocated as both read and write.  
  1827. The  SYSOP  would  have  to set up each RBBSxPC.DEF  file  carefully  using 
  1828. CONFIG.BAS such that the actual access was as follows:
  1829.  
  1830.               Physical    Physical     Physical     Physical     Physical
  1831.              Volume "D"  Volume "E"   Volume "F"   Volume "G"   Volume "H"
  1832.  
  1833. RBBS-PC #1    READ/WRITE  Read-only   Read-only    Read-only    Read-write
  1834. RBBS-PC #2    Read-only   READ/WRITE  Read-only    Read-only    Read-write
  1835. RBBS-PC #3    Read-only   Read-only   READ/WRITE   Read-only    Read-write 
  1836. RBBS-PC #4    Read-only   Read-only   Read-only    READ/WRITE   Read-write
  1837.  
  1838. Physical  volume "H" would contain all the shareable  RBBS-PC  files.   The 
  1839. files  that are "shareable" are a function of the type of environment  that 
  1840. the multiple RBBS-PC's are running in (see section 6.0).  
  1841.  
  1842. Each copy of RBBS-PC would have it's own physical volume that all the other 
  1843. copies  of RBBS-PC would access as "read-only" and which it could access as 
  1844. "READ/WRITE."   This "READ/WRITE" volume would contain all the non-sharable 
  1845. RBBS-PC  files.   The files that are "non-sharable" are a function  of  the 
  1846. type  of  multiple  RBBS-PC  environment that RBBS-PC is  running  in  (see 
  1847. section 6.0).
  1848.  
  1849. RBBS-PC  displays on line 25 the status of those files which must be locked 
  1850. in a network environment.  The lock status of the message file is displayed 
  1851. in  positions 68 & 69.   The lock status of the user file is  displayed  in 
  1852. positions 71 & 72.  The lock block status is displayed in positions 74 & 75 
  1853. and comments/uploads share positions 77 & 78.   The letter "U" in the first 
  1854. position  shows that the file is currently "UNLOCKED".   The letter "L"  in 
  1855. the first position indicates that the file is "LOCKED".
  1856.  
  1857.  
  1858.  
  1859.  
  1860.  
  1861.                        Page 31 of 108
  1862. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1863.  
  1864. 6.2  RBBS-PC Text Files
  1865. -----------------------
  1866. Similarly, the RBBS-PC "text" files are both static and variable in length.  
  1867. The "text" files used by RBBS-PC are:
  1868.  
  1869. BULLET   - This is a text menu file that is printed following the   WELCOME  
  1870. file  when a user first enters the system.   It must be present  if "CONFIG  
  1871. Utility parameter # 43" is greater than 1.  It can also be called from  the  
  1872. main  menu  with the <B>ulletins command.  
  1873.  
  1874. BULLET1 --> n -- There can be 1 to 99 "bulletins".   RBBS-PC will check for 
  1875. the  existence  of  a  file whose name consists  of  the  prefix  given  by 
  1876. parameter  44  of  CONFIG.BAS appended with the bulletin number  and  using 
  1877. parameter 41 of CONFIG.BAS to determine the drive to find the bulletin on. 
  1878.  
  1879. Users  can elect to have displayed two different types of "graphics"  files 
  1880. for such standard RBBS-PC system files as HELPxx,  BULLET, MENU's, etc.  In 
  1881. order  for a user to see either of these two different types of  "graphics" 
  1882. files, the following must have occured:
  1883.  
  1884.           logged  on  N/8/1,
  1885.           requested graphics (either full ASCII or "color/music"), and
  1886.           the file must exist and the filename end in either:
  1887.                "G" for files containing the graphic ASCII characters
  1888.                     whose values are in the range 129 to 256, or
  1889.                "C" for files containing combinations of the full
  1890.                     256 characters that the caller's communication 
  1891.                     software can interpert and translate into colors
  1892.                     and music (i.e. PCTK666, QMODEM, and EXECPCT).
  1893.  
  1894. RBBS-PC  will check to see if a "graphics" files exists by appending a  "G" 
  1895. or "C" to the file name.  If such a file can't be found, RBBS-PC will check 
  1896. to see if a non-graphics file exists (i.e.  one without the "G").   RBBS-PC 
  1897. will  display the first file it finds or a message that the file can not be 
  1898. found.
  1899.  
  1900. DIR.DIR,  aa.DIR  -->  nn.DIR  -- At  least  one  DIR.DIR file  has  to  be 
  1901. present   on  one  of  the  drives available for  downloading.  Alternative 
  1902. directories,  aa.DIR  --> nn.DIR (see section 9),  should be meaningful and  
  1903. should be reflected in the DIR file.
  1904.  
  1905. FILESEC - is more fully described in section 12.4 on security.
  1906.  
  1907. HELP01  -->  HELP09  -- Represent the nine on-line help files  for  RBBS-PC 
  1908. users.  They are associated with the following areas:
  1909.  
  1910. HELP01 -text   file that is printed when <H>elp is requested on  the   main  
  1911.         function prompt.  It contains  command information.
  1912.  
  1913. HELP02 -text   file  that  is printed when a <?> is entered  on  the   main  
  1914.         function   prompt.    It is also printed following the NEWUSER file  
  1915.         for  new  users and tells users what functions the RBBS supports. 
  1916.  
  1917. HELP03 -text  file that describes the message protection options when   <?>  
  1918.         is   entered  after  the  message <E>nter command is  executed   at  
  1919.         the  main  message menu.
  1920.  
  1921.                        Page 32 of 108
  1922. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1923.  
  1924. HELP04 -text  file that describes the message entry subfunctions when   <?>  
  1925.         is entered at the subfunction prompt.
  1926.  
  1927. HELP05 -text   file that is printed when <H>elp is entered  in  the   files  
  1928.         subsystem function prompt.
  1929.  
  1930. HELP06 -text   file  that is printed when a <?> is entered  in  the   files  
  1931.         subsystem function prompt.
  1932.  
  1933. HELP07 -text   file printed when <H>elp is requested at the  message   read  
  1934.         prompt.
  1935.  
  1936. HELP08 -text   file  printed  when  <H>elp is  requested  in  the   utility  
  1937.         subsystem function prompt.
  1938.  
  1939. HELP09 -text file printed when <H>elp is requested for type of graphics a
  1940.         user wants (none, ASCII, color/music).
  1941.  
  1942. MENU1->5  -- contain  the  various commands for  the  subsystems.   It   is  
  1943. recommended  that these be placed on an electronic disk drive  (i.e.   RAM) 
  1944. rather than on a floppy or hard drive.
  1945.  
  1946. NEWUSER  - This is a text file that is displayed for new users just  before  
  1947. registration occurs.  
  1948.  
  1949. PASSWRDS - is more fully described in section 12.3 on security.
  1950.  
  1951. PRELOG  - This  is a text file that is displayed when a user dials  up  but 
  1952. before he can log on.
  1953.  
  1954. TRASHCAN  - is  a  text  file  that contains names  that  the  SYSOP  finds 
  1955. objectionable and does not want used as either a users first or last  name.  
  1956. RBBS-PC uses this file, if it exists, to deny access to anyone using one of 
  1957. these names for either their first or last name.
  1958.  
  1959. WELCOME - This is a text file that is printed when a user first enters  the  
  1960. system.   It  must be present,  and it should be modified to identify  your  
  1961. system.   Similarly  each "confernce" can have a "welcome" file by having a 
  1962. file whose last charcter ended in a "w" (i.e.  conference "RBBS" would have 
  1963. a message file named RBBSM.DEF and a user file named RBBSU.DEF if it  where 
  1964. a "private" conference and a welcome file named RBBSW.DEF).
  1965.  
  1966. CONFENCE - This is a text file that is printed when a user selects the J)oin
  1967. function from the main menu.  It should be created using your favorite text
  1968. editor and should contain a list of the conferences that you have on your
  1969. system.
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.                        Page 33 of 108
  1982. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  1983.  
  1984. 7.0 USING THE "CONFIG" UTILITY TO CONFIGURE RBBS-PC CPC13
  1985. ---------------------------------------------------------
  1986. The RBBS-PC.DEF file you get (which,  if you don't have it  originally,  is  
  1987. created  for you by the CONFIG.BAS program) contains the program's  default  
  1988. operating  parameters  and values.  When you run the CONFIG.BAS program  to  
  1989. create  RBBS-PC.DEF  or  to  update it,   you can change  many   of   these  
  1990. parameters  to meet your needs.  Certain parameters which control  critical  
  1991. operations  of the programs are embedded in the RBBS program and should not  
  1992. normally  be changed by the system operator.   Unless a value or  parameter  
  1993. is  noted  here,  it  should be changed only  with  great  forethought  and  
  1994. caution.
  1995.  
  1996. CONFIG.BAS, unlike Gaul, is divided into nine parts or screens.  They are:
  1997.  
  1998.      Screen         Description
  1999.  
  2000.         1           Global RBBS-PC Parameters (Part 1 of 2)
  2001.         2           Global RBBS-PC Parameters (Part 2 of 2)
  2002.         3           Parameters for RBBS-PC "text" files
  2003.         4           Parameters for RBBS-PC "system" files
  2004.         5           Parameters for RBBS-PC "doors"
  2005.         6           Parameters for RBBS-PC Security
  2006.         7           Parameters for Multiple RBBS-PC's and "conferences"
  2007.         8           RBBS-PC Utilities
  2008.         9           Use of Dos Subdirectories
  2009.  
  2010. The user may scroll forward or backward through the 9 screens of parameters 
  2011. in CONFIG.BAS using the PgUp and PgDn keys on the  keyboard.   Additionally 
  2012. users  may go directly to a specific screen by pressing a function key  (F1 
  2013. through F9) coressponding to the page to be selected.  To terminate CONFIG, 
  2014. users need only press the "End" key on the keyboard.
  2015.  
  2016. The compiled version of CONFIG.BAS can be invoked with the command:
  2017.  
  2018.          CONFIG.EXE
  2019.  
  2020. This assumes that the compiled version of CONFIG.BAS,  CONFIG.EXE is on the 
  2021. default  disk drive.   CONFIG.BAS will write the RBBS-PC  definition  file, 
  2022. RBBSxPC.DEF to the default drive.
  2023.  
  2024. 7.1 Global RBBS-PC Parameters (Part 1 of 2)
  2025. -------------------------------------------
  2026.     7.1.1 SYSOP's Name and Password for Remote Access
  2027.     -------------------------------------------------
  2028.     Parameters   1-4  request the RBBS system operator's (SYSOP) name   and  
  2029.     dual  passwords.    When  logging onto the system remotely,   the SYSOP 
  2030.     can log  on  using  Password #1 as a first name and Password #2 for  as 
  2031.     last  name, in  which  case the system will recognize them as the SYSOP 
  2032.     and  allow  all the SYSOP functions to be preformed,  even as a  remote 
  2033.     user.    The  SYSOP  name  is  used  to   insure  that  users  are  not 
  2034.     attempting  to  access  RBBS-PC using the SYSOP name  hoping to  get  a 
  2035.     higher access level.   Attempting to logon using the  SYSOP  name  will  
  2036.     result   in  "LOGON  DENIED"  and a posting of  the  attempt   in   the  
  2037.     CALLERS file.    If you want to eliminate anyone from logging on as the 
  2038.     SYSOP, you  can simply reply with a "null" (i.e.  a carriage return) to 
  2039.     Password #1 and  Password #2.
  2040.  
  2041.                        Page 34 of 108
  2042. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2043.  
  2044.     7.1.2 Password to Take Over RBBS-PC Locally as SYSOP
  2045.     ----------------------------------------------------
  2046.     The ESC key is used to log on in local SYSOP mode.  Parameter 5  allows  
  2047.     a  password to be required if someone hits  Esc  on  the   keyboard  of 
  2048.     the  PC running RBBS-PC before they are considered a local  SYSOP.   If 
  2049.     you  enter NONE, no password is required.
  2050.  
  2051.     7.1.3  SYSOP's default sign-on mode 
  2052.     -----------------------------------
  2053.     Parameter   6  sets the system operator's sign-on mode  as  EXPERT   or  
  2054.     NOVICE.   Unless you are very familiar with the RBBS-PC CPC13's command 
  2055.     structure,  the  SYSOP's  sign-on mode should be NOVICE.
  2056.  
  2057.     7.1.4 SYSOP's "office" hours
  2058.     ----------------------------
  2059.     Parameter  7 is for the SYSOP's "office  hours" (i.e.   when the  SYSOP 
  2060.     can be paged by a user).   The IBM PC's bell is rather  insistent,  and 
  2061.     these  hours should be set to match when you will be  within   ear-shot 
  2062.     of  the  RBBS-PC.    The times are set using a 24-hour  military  clock  
  2063.     (i.e.   10:00  P.M.   is  2200  hours).    NOTE:  These  hours  can  be 
  2064.     overridden by  activating the page bell (F4). 
  2065.  
  2066.     7.1.5 Use of Printer Bell
  2067.     -------------------------
  2068.     Parameter  8  allows allows the SYSOP to elect to have the bell on  the 
  2069.     printer  sounded (it is usually louder than the PC's) when he is  being 
  2070.     "paged".
  2071.  
  2072.     7.1.6 Number of Rings RBBS-PC Waits Before Answering
  2073.     ----------------------------------------------------
  2074.     Parameter   9   specifies the number of rings to wait before  answering 
  2075.     the  phone.   Specifying zero rings means that RBBS-PC will answer  the 
  2076.     phone as soon as it rings. 
  2077.  
  2078.     If  you specify the number ONE RBBS-PC will wait for the phone to  ring 
  2079.     and then instruct the modem to answer the phone.   This is the  default 
  2080.     setting  and requires that the modem be capable of indicating that  the 
  2081.     phone  is ringing (i.e.  provide the "ring indicator" signal) and  that 
  2082.     the modem cable have PIN 22 connected at both ends.
  2083.  
  2084.     Specifying  a  number  equal to ZERO (and not  specifying  "ring-back") 
  2085.     means  that RBBS-PC will initialize the modem to  automatically  answer 
  2086.     the  phone  (independent of RBBS-PC) and RBBS-PC will simply  wait  for 
  2087.     carrier  detect to occur.   This is NOT RECOMMENDED.   Howeve,  if your 
  2088.     non-Hayes  modem  simply is incapable of indicating that the  phone  is 
  2089.     ringing or your modem cable does not have PIN 22 connected, this is the 
  2090.     option you will have to elect.  If this option is selected, do not drop 
  2091.     into DOS remotely (either through a "door" or via the SYSOP's  function 
  2092.     7).   If  you do and are inadvertently disconnected the next person  to 
  2093.     dial  will  be connected to wherever you where because the  modem  (not 
  2094.     RBBS-PC) is answering the phone.
  2095.  
  2096.     If you specify a number greater than 2 means that RBBS-PC will either:
  2097.  
  2098.     1.  wait until the specified number of rings to answer the phone, or
  2099.  
  2100.  
  2101.                        Page 35 of 108
  2102. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2103.  
  2104.     2.  answer the next call after the current one after the specified 
  2105.         number of rings specified provided that the next call comes
  2106.         within 45 seconds after the first call stops ringing the phone.
  2107.         This mode is called RING-BACK.
  2108.  
  2109.     Specifying a number greater than one is useful only when a single phone 
  2110.     line  can receive both voice (i.e.  callers who wish to speak with  the 
  2111.     SYSOP) and data calls (i.e.  for RBBS-PC) on an unscheduled basis.   In 
  2112.     this  type  of  environment (i.e.  a random mix of  voice  and  RBBS-PC 
  2113.     calls),  there  are two ways a SYSOP can set up RBBS-PC so that RBBS-PC 
  2114.     can  automatically determine if the call is for the SYSOP or for  RBBS-
  2115.     PC.
  2116.  
  2117.     First, the SYSOP can establish the rule with the callers that if unable 
  2118.     to  personally  answer the phone,  then RBBS-PC will answer  the  phone 
  2119.     after it rings the number of times specified in option 9.   Callers can 
  2120.     let  the phone ring and (if it is not answered by a person within  some 
  2121.     agreed  upon  number rings) know that it will be answered  by  RBBS-PC.  
  2122.     This  is useful to those who may have either hearing or speech problems 
  2123.     and   are   unable  to  use  the  telephone  conveniently   for   voice 
  2124.     communications.
  2125.  
  2126.     A second approach is the more classic,  "ring-back" approach.   RBBS-PC 
  2127.     can  be  told to NEVER answer the first call (it  can  ring  forever!).  
  2128.     However,  should  the  caller  WAIT A MINIMUM OF 12  SECONDS  (a  Hayes 
  2129.     restriction) and call back no later than 45 seconds after the last ring 
  2130.     of  the first call,  RBBS-PC will answer the call after the  number  of 
  2131.     rings indicated in parameter 9 provided that the number of rings is set 
  2132.     to between one and five.  If callers want to make a voice contact, they 
  2133.     can  simply  call and let the phone ring until it is answered.  If  you 
  2134.     have  a  dedicated  line  for your RBBS-PC (either full-time  or  on  a 
  2135.     scheduled basis),  parameter 9 should be set to ZERO.
  2136.  
  2137.     7.1.7 Deny Access to Callers Who Use 300 Baud
  2138.     ---------------------------------------------
  2139.     Parameter 10 allows a SYSOP to not accept calls if the caller is trying 
  2140.     to access his system at 300 BAUD.   Some SYSOP's believe that 300  BAUD 
  2141.     users  have  a "pre-puberty" mentality and cause  more  problems  (i.e. 
  2142.     infantile  messages)  for the SYSOP than their  contributions  justify.  
  2143.     While  RBBS-PC  is intended to be as open a system  as  possible,  each 
  2144.     SYSOP has the option of electing to lock out 300 BAUD access.   Another 
  2145.     reason  for denying access to 300 BAUD users is when RBBS-PC is running 
  2146.     in  a multi-tasking DOS environment that does not handle 300 BAUD  very 
  2147.     efficiently (i.e.  like MultiLink).   Whatever reasons a SYSOP has  for 
  2148.     denying  access  to 300 BAUD users,  this option enables the  SYSOP  to 
  2149.     select  to do so using CONFIG rather than having to modify the  RBBS-PC 
  2150.     source code.
  2151.  
  2152.     7.1.8 Are You Using ANSI.SYS With A Color Monitor
  2153.     -------------------------------------------------
  2154.     Option 11 allows each SYSOP to see the color text files  (i.e.  menues, 
  2155.     help files,  etc.) exactly as the remote user sees them.  Obviously the 
  2156.     system  running RBBS-PC should have a color monitor.   More importantly 
  2157.     each  SYSOP  that  elects  to  activate  this  option  should   satisfy 
  2158.     themselves  that the program ANSI.ASM written and copyrighted by  David 
  2159.     Terry and modified by Dave Staehlin will not harm your particular brand 
  2160.  
  2161.                        Page 36 of 108
  2162. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2163.  
  2164.     of color monitor or color graphics board.  
  2165.  
  2166.     In  order  to  effectively use this option you must have  the  ANSI.SYS 
  2167.     driver loaded on your machine.   This can be accomplished by  including 
  2168.     the statement
  2169.  
  2170.                               DEVICE=ANSI.SYS
  2171.  
  2172.     within  your system's CONFIG.SYS file.   This load's the standard  IBM-
  2173.     supplied ANSI.SYS file into your system.   If you use an ANSI.SYS other 
  2174.     than  the  one supplied by IBM,  you may not see what your remote  user 
  2175.     sees.
  2176.  
  2177.     CAUTION:   Dave  Staehlin indicates the changes he made to the .ASM and 
  2178.     .OBJ  files reference some color page BIOS - hence,  this may not  work 
  2179.     with  a  monochrome  video  card  or  within  certain   configurations!  
  2180.     Similarly,  it  may not work with anything other than the standard  IBM 
  2181.     Color Graphics card and an IBM Color Monitor.   Many  "plug-compatable" 
  2182.     color cards (like Hercules) have been known to burn out a monitor.  Any 
  2183.     SYSOP  who elects this option takes on the SOLE responsibility and risk 
  2184.     of  determining if the combination of the many components  envolved  in 
  2185.     the   particular  system  RBBS-PC  is  to  be  run  in  (the  ANSI.SYS, 
  2186.     ANSI.OBJ/.ASM code,  the color card being used,  the color monitor, the 
  2187.     BIOS,  and the memory configuration) would cause damage to these or any 
  2188.     of the other components within the system.   To be safe, don't activate 
  2189.     this  option.   If  you  do activate this option  and  your  system  is 
  2190.     damaged,  you should not expect to be reimbursed for such damage.  This 
  2191.     option  is  provided  only  as a convience to those  SYSOP's  who  have 
  2192.     assumed the sole responsibilities for any results that occur activating 
  2193.     this option.   Remember,  this option need not be activated in order to 
  2194.     run RBBS-PC normally!   
  2195.  
  2196.     7.1.9 Go Off-Line Whenever a Disk Full Occurs
  2197.     ---------------------------------------------
  2198.     Parameter  12  gives the SYSOP the option of electing to  have  RBBS-PC 
  2199.     automatically  take itself off-line if a "disk full" condition  occurs.  
  2200.     In previous versions,  this was not an option.  Now, if the SYSOP has a 
  2201.     floppy disk for uploads that gets full and everything else is on a hard 
  2202.     disk, the SYSOP can keep RBBS-PC from taking itself off-line should the 
  2203.     floppy disk get full.
  2204.  
  2205.     7.1.10 Prompt Sounds (can be changed by SYSOP from keyboard, too)
  2206.     -----------------------------------------------------------------
  2207.     Parameter  #  13 is the SYSOP'S preference for prompt sounds when input  
  2208.     is  required.  This applies to remote and local.
  2209.  
  2210.     7.1.11 Maximum Time on Per Session
  2211.     ----------------------------------
  2212.     Parameter   # 14 of the CONFIG program asks for the maximum amount   of  
  2213.     time  each  user is to be allowed on the system per session.    Set the 
  2214.     number   of   minutes  to  whatever you are comfortable with,   but  72 
  2215.     minutes is  a  good  setting  for starting up.    Subsequently you  may 
  2216.     have to lower this  number  once  your number of callers increases,  in 
  2217.     order  to keep callers'  waiting  times reasonable.   This can also  be 
  2218.     made the maximum time on the system per  day.   As described in section 
  2219.     12.3,  each  security  level  can have its own maximum  time   on   the  
  2220.  
  2221.                        Page 37 of 108
  2222. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2223.  
  2224.     system per session specified.
  2225.  
  2226.     7.1.12 Limit Maximum Time on System Per Day
  2227.     -------------------------------------------
  2228.     You  may limit the maximum amount of time any single user can spend  on 
  2229.     your  system  each day via parameter 15 of CONFIG.  This is helpful  if  
  2230.     you   have  a  relatively  busy  RBBS and want to have as   diversified  
  2231.     group   of  callers as possible.    What this parameter does is to tell 
  2232.     RBBS-PC  to  keep  track of the total amount of elapsed time a user  is 
  2233.     on RBBS each day.   Each  time a caller logs on,  the maximum amount of 
  2234.     time that they are allowed on the system  is checked against this daily 
  2235.     cumulative total.   The time remaining in each  caller's session is the 
  2236.     difference.    When a caller exceeds this maximum and tries  to log  on 
  2237.     again,  they  are  told that they ahve exceeded the allocated time  for 
  2238.     that  day and to try again tomorrow.
  2239.  
  2240.     7.1.13 Months of Inactivity Before a User is Deleted
  2241.     ----------------------------------------------------
  2242.     Parameter  # 16 sets the number of months inactivity that  must  elapse 
  2243.     before   a   user  is  deleted  from the  USERS  file  when  the  SYSOP 
  2244.     "rebuilds" the user file  (see section 7.8.2).
  2245.  
  2246.     7.1.14 Communication Port to be Used
  2247.     ------------------------------------
  2248.     Parameter   #  17 requests the user to specify the communication   port  
  2249.     that  RBBS-PC  will be using in order to determine if it is device COM1 
  2250.     or device  COM2.
  2251.  
  2252.     7.1.15 Version of DOS RBBS-PC Will Run Under
  2253.     --------------------------------------------
  2254.     Parameter   18  allows  the SYSOP to specify the version of  DOS   that  
  2255.     RBBS-PC  will be running under.    When RBBS-PC is running this is  the 
  2256.     ONLY  indicator  used  by  RBBS-PC when it has to determine what  level 
  2257.     of DOS it is  running  under.    The  correctness of this parameter  is 
  2258.     very   significant   when  RBBS-PC  options are invoked using  commands 
  2259.     specific  to  DOS  2.0 and above (i.e.   the  CTTY  command  for  SYSOP 
  2260.     function 7).
  2261.  
  2262.     7.1.16 Name of RBBS-PC
  2263.     ----------------------
  2264.     Parameter # 19 allows the SYSOP to specify the name of the RBBS-PC that 
  2265.     is to be displayed when a user first connects with the system and prior 
  2266.     to completing the logon process.
  2267.  
  2268. 7.2 Global RBBS-PC Parameters (Part 2 of 2)
  2269. -------------------------------------------
  2270.     7.2.1 Color Monitor's Foreground/Background/Border
  2271.     --------------------------------------------------
  2272.     Parameters   21   through  23  allow the SYSOP to  specify  the  colors 
  2273.     desired  for the foreground,   background, and border.  When specifying 
  2274.     these options  the BASIC manual's section describing the COLOR  command 
  2275.     in  text  mode  should  be  consulted.    This is useful  when  running 
  2276.     multiple RBBS-PC's and you want a handy way of determine which  RBBS-PC 
  2277.     it  is  that  you  are  viewing  on  the  screen.    This   option   is 
  2278.     NOT available if the SYSOP has specified a "ring-back" system.  
  2279.     PC.DEF file for a dedicated line.)
  2280.  
  2281.                        Page 38 of 108
  2282. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2283.  
  2284.     7.2.2 Selecting the Modem Speaker On or Off
  2285.     -------------------------------------------
  2286.     There  are  times  when the SYSOP no longer wants  the  speaker  to  be  
  2287.     activated  when  a user logs on.    The noise can drive anyone nutty on 
  2288.     a  busy  RBBS-PC  bulletin  board (especially late at night).    Option 
  2289.     24 allows the SYSOP to  keep the modem speaker turned off at all times.
  2290.  
  2291.     7.2.3 Reminding Users of Messages They Left
  2292.     -------------------------------------------
  2293.     Option  25 allows the SYSOP to remind users not only of  the   messages  
  2294.     that  might   be for them but also messages that they  may  have  left.   
  2295.     This  should   be enough of a nuisance to insure that users  do  delete 
  2296.     some of the  messages they have left and help to keep the MESSAGES file 
  2297.     to a minimum.
  2298.  
  2299.     7.2.4 Remind Users of Uploads and Downloads
  2300.     -------------------------------------------
  2301.     Parameter   26  allows the SYSOP to elect to remind users of how   many  
  2302.     files they have downloaded and uploaded.
  2303.  
  2304.     7.2.5 Remind Users of Their Profile Preferences
  2305.     -----------------------------------------------
  2306.     Parameter  27 allows a SYSOP to remind users every time they log on  of 
  2307.     the  preferences  they have selected for such things as  file  transfer 
  2308.     protocol, graphics, nulls, etc.
  2309.  
  2310.     7.2.6 Default User Page Length
  2311.     ------------------------------
  2312.     Parameter   28 allows the SYSOP to establish a default page length  for 
  2313.     users  when they log on.    A 23 line page length is the default,   but 
  2314.     the SYSOP can  set  it  to any number between 0 and 255.   If set to 0,  
  2315.     the user  will  receive continuously scrolling output.
  2316.  
  2317.     7.2.7 Maximum Number of Lines Per Message
  2318.     -----------------------------------------
  2319.     Parameter  29 allows the SYSOP to specify (within the range of 1 to 30) 
  2320.     the maximum number of lines allowed in each message.
  2321.  
  2322.     7.2.8 Requiring non-ASCII Protocol for Binary Files
  2323.     ---------------------------------------------------
  2324.     Option  30 allows the SYSOP to tell RBBS-PC that files ending in binary 
  2325.     file  extensions (i.e.  .ARC,  .EXE,  .COM,  .OBJ, .WKS, .BAS, or whose 
  2326.     second letter of  the  extension is Q) can not be downloaded unless the 
  2327.     user selects  XMODEM or MNP.   This should eliminate some user problems 
  2328.     before they occur.    IBM's  BASIC  interpreter's  SAVE command default 
  2329.     is  to   write  files in a special binary format (also referred  to  as 
  2330.     'tokenized') because they require much less disk space.
  2331.  
  2332.     7.2.9 MICROCOM's MNP Protocol
  2333.     -----------------------------
  2334.     Option 31 allows MNP to be optional within  RBBS-PC.  REGRETABLY,  this 
  2335.     option  should not be selected with version CPC13-1A.   This is because 
  2336.     it  was not possible to resolve the linkage  incompatabilities  between 
  2337.     the  new compilers and the MNP library and RBBS interface prior to  the 
  2338.     release  of  CPC13-1A.   Every  effort is being made  to  correct  this 
  2339.     particular problem. 
  2340.  
  2341.                        Page 39 of 108
  2342. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2343.  
  2344.     Some SYSOP's may not wish to provide their users with the choice of MNP 
  2345.     protocol  (especially  if  they are employed by a company  that  has  a 
  2346.     competing protocol).  RBBS-PC's  features and growth are designed to be 
  2347.     "additive."  This parameter allows each SYSOP to decide if MNP protocol 
  2348.     is to be available for file transfers.  Microcom's error-free protocol, 
  2349.     MNP,  is available for file transfer beginning with version CPC12-4A of 
  2350.     RBBS-PC.  The RBBS-PC.EXE file includes code from the MNP library.  The 
  2351.     MNP  library file provided with RBBS-PC is done so under the  following 
  2352.     condition:
  2353.     
  2354.          The  MNP library file provided with RBBS-PC is the  exclusive 
  2355.          proprietary property of Microcom,  Inc.  and this copyrighted 
  2356.          program  material is supplied by Microcom exclusively for use 
  2357.          with the RBBS-PC bulletin board system.  Inclusion of library 
  2358.          code  within RBBS-PC does not in any way grant a  license  to 
  2359.          the Microcom Networking Protocol (MNP).  The use of the RBBS-
  2360.          PC  MNP library code modules or MNP in any product other than 
  2361.          the RBBS-PC program is a violation of Microcom's  proprietary 
  2362.          rights in the MNP technology.
  2363.  
  2364.  
  2365.     7.2.10 Omitting First Level Directory in "New" Command
  2366.     -----------------------------------------------------
  2367.     Option   32 allows the SYSOP to exclude the primary directory (DIR.DIR) 
  2368.     from  the   search  done by the New command.    If  you  have  multiple  
  2369.     directories   (i.e.   RBBS.DIR  through  BASIC.DIR),   any dates in the 
  2370.     primary directory would not be  of  files.   The  "New"  command (as in 
  2371.     "What new files have been  put  on  the  download  directories since  I 
  2372.     was  last on?") search each line of each  file  whose extension is  DIR 
  2373.     for  a  date  field.   Since the first level directory  is  normally  a 
  2374.     listing  of the other directories and their general subject  areas,  it 
  2375.     is advisable to omit the first level directory from the "New" command.
  2376.  
  2377.     7.2.11 Omitting Upload Directory in "New" Command
  2378.     ------------------------------------------------
  2379.     Option   33   allows the SYSOP to exclude the directory on which  users  
  2380.     place   the information on their uploads (i.e.  99.DIR) from the  "New" 
  2381.     command.    As  some  SYSOP's wish to preview or otherwise keep private 
  2382.     the uploads  before  putting  them  on the download directories,   this 
  2383.     acts  as   a   further   insurance against  unauthorized  access  of  a 
  2384.     "private" upload directory.
  2385.  
  2386.     7.2.12 Making System Welcome Interruptable
  2387.     ------------------------------------------
  2388.     Option    34  allows   the  SYSOP  to  make   the   system    "welcome"   
  2389.     file    interruptible.    The default is that YES it is  interruptible.   
  2390.     However,  if   the SYSOP feels too many people are bypassing it and  it 
  2391.     contains  essential  information,   the SYSOP can set this parameter to 
  2392.     NO  (i.e.  the user can not  suspend or cancel the listing of this file 
  2393.     at their terminal with a CTRL S or  CTRL K).
  2394.  
  2395.     7.2.13 Making System Bulletins "Optional"
  2396.     -----------------------------------------
  2397.     Parameter   35   is  intended to allow the SYSOP to  indicate  if   the  
  2398.     system  bulletins are to be an option for users when they log on.
  2399.  
  2400.  
  2401.                        Page 40 of 108
  2402. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2403.  
  2404.     7.2.14 Type of PC RBBS-PC Is Running On
  2405.     ---------------------------------------
  2406.     Option 36 is designed to allow RBBS-PC to run on some  "IBM-compatible" 
  2407.     PC's  that make use of  unused interrupts or on the IBM PCjr.   RBBS-PC 
  2408.     checks  to see if the unused interrupt X'7F' is non-zero.   If  it  is, 
  2409.     RBBS-PC thinks that the software product,  MultiLink (from The Software 
  2410.     Link,  Inc.)  is  present and issues the appropriate  MultiLink  calls.  
  2411.     Obviously  if  this is not the case,  strange and unpredictable  things 
  2412.     happen which result in RBBS-PC not working.   The COMPAQ+ is an example 
  2413.     of this syndrome.
  2414.  
  2415.     If  running RBBS-PC on an IBM PCjr using an external modem but  without 
  2416.     an internal modem,  the communications port must be opened as COM1 even 
  2417.     though  RBBS-PC must use the COM2 RS232 registers for  controlling  the 
  2418.     communications port.
  2419.  
  2420.     7.2.15 Issuing Modem Commands Between Rings
  2421.     -------------------------------------------
  2422.     Option  37  allows  the SYSOP to tell RBBS-PC either to wait  to  issue 
  2423.     commands  inbetween rings or to issue modem commands  without  waiting.  
  2424.     Some  modems cannot both handle the telephone ringing and accept  modem 
  2425.     commands simultaneously.  Other modems, like the Hayes, can handle such 
  2426.     simultaneous demands.  For these later (i.e. Hayes, Prometheous, Multi-
  2427.     Tech, etc.) this option should be set to "NO." 
  2428.  
  2429.     7.2.16 Baud Rate to Open Modem Initially At
  2430.     -------------------------------------------
  2431.     Some 2400 baud modems (like the Hayes) MUST be opened initially at 2400 
  2432.     baud  because  when they automatically answer the phone they  can  only 
  2433.     "bump down" when automatically detecting baud rate (i.e. from 2400 down 
  2434.     to 1200 down to 300).  Parameter 38 allows the SYSOP to select the baud 
  2435.     rate at which RBBS-PC is to open the modem at initially.
  2436.  
  2437.     7.2.17 Seconds To Wait Before Logging Off Idle Users
  2438.     ----------------------------------------------------
  2439.     The  SYSOP can select the number of seconds that RBBS-PC will  allow  a 
  2440.     user  to be "idle" (i.e.  not sending or receiving data) via  parameter 
  2441.     39.  
  2442.  
  2443.     7.2.18 Using "Dumb" Modems
  2444.     --------------------------
  2445.     If  the SYSOP has a non-Hayes modem (i.e.  one that will not  recognize 
  2446.     Hayes  commands  and  will not return Hayes responses) that  will  only 
  2447.     "auto-answer" the phone,  parameter 40 allows the SYSOP to so  indicate 
  2448.     to RBBS-PC.   Typically this would be some communications network (i.e. 
  2449.     TymnNet)  or local area network that supplied a simple RS232 interface.  
  2450.     Selecting this option causes RBBS-PC to 
  2451.  
  2452.          1.  Issue no Hayes commands,
  2453.          2.  Depend on no Hayes-like responses,
  2454.          3.  Control the interface with the Data Terminal Ready (DTR), 
  2455.          4.  Assume somebody has called whenever Carrier Detect (CD) is 
  2456.              detected, and
  2457.          5.  Assume that whomever calls is at the baud rate selected in
  2458.              CONFIG parameter 38.
  2459.  
  2460.  
  2461.                        Page 41 of 108
  2462. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2463.  
  2464. 7.3 Parameters for RBBS-PC "text" Files
  2465. ---------------------------------------
  2466.     7.3.1 Drive Containing RBBS-PC "Bulletins"
  2467.     ------------------------------------------
  2468.     Parameter 41 indicates the disk drive on which RBBS-PC is to search for 
  2469.     bulletins when a user requests to see them.
  2470.  
  2471.     7.3.2 Name of File Describing the "Bulletins"
  2472.     ---------------------------------------------
  2473.     This  is  the text file that is shown to a user if  bulletins  are  not 
  2474.     optional (see parameter 35) or if the user replies "L" when notified of 
  2475.     how many bulletins exist (see parameter 43).   This file should contain 
  2476.     a list of the bulletins (i.e. 1-99) and a brief one-line description of 
  2477.     the contents of each (i.e. "New Release of RBBS-PC").
  2478.  
  2479.     7.3.3 Number of System Bulletins
  2480.     --------------------------------
  2481.     Parameter 43 allows a SYSOP to have from 0 to 99 "bulletins."  If there 
  2482.     are  0  bulletins  a  user is notified that  there  are  no  bulletins.  
  2483.     Bulletins should be brief, informative, and timely.  I personally think 
  2484.     that there should be very few bulletins and that they should be changed 
  2485.     often if users are to be enticed to look at them.
  2486.  
  2487.     7.3.4 Prefix Used to Name Bulletin Files
  2488.     ----------------------------------------
  2489.     Parameter 44 provides the SYSOP with the flexibility to make the prefix 
  2490.     of the bulletins anything he wants (i.e. BULLET).  To this is added the 
  2491.     number  (i.e.  BULLET7  for  bulletin  number 7)  and  the  disk  drive 
  2492.     designated  in  parameter  41  is  searched  for  the  bulletin  number 
  2493.     requested when some asks to see a bulletin.   If the file is not found, 
  2494.     the  user is so informed.  If a "graphics" equivalent is found and  the 
  2495.     user  has signed on N/8/1 and requested graphics,  the graphics version 
  2496.     of the bulletin is displayed (i.e. BULLET7G).
  2497.  
  2498.     7.3.5 Drive Containing On-Line Help Files
  2499.     -----------------------------------------
  2500.     Parameter 45 indicates the disk drive on which RBBS-PC is to search for 
  2501.     to  find  RBBS-PC's on-line "help" files whenever a user asks for  help 
  2502.     within a specific subsystem.
  2503.  
  2504.     7.3.6 Prefix Used to Name "Help" Files
  2505.     --------------------------------------
  2506.     There  are  nine on-line "help" files used by RBBS-PC as  described  in 
  2507.     section  6.2  previously.   The  SYSOP may chose  to  have  them  named 
  2508.     something  other than HELP01 through HELP08.   Parameter 46 allows  the 
  2509.     SYSOP  to  pick up to a seven-character prefix to which the  numbers  1 
  2510.     through  9 will be appended.   This file name is what RBBS-PC will look 
  2511.     for  on the drive specified in parameter 45 when a user asks  for  help 
  2512.     on-line.   As with "bulletins", if a "graphics" equivalent is found and 
  2513.     the  user  has  signed on N/8/1 and requested  graphics,  the  graphics 
  2514.     version of the help file is displayed (i.e. HELP7G).
  2515.  
  2516.     7.3.7 Name of "NEWUSER" file
  2517.     ----------------------------
  2518.     This  is  the text file that new users see when they first log  on  and 
  2519.     before they "register" themselves in RBBS-PC's USERS file.  A user sees 
  2520.  
  2521.                        Page 42 of 108
  2522. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2523.  
  2524.     it  once  and  only  once during his first  session.   It  can  contain 
  2525.     anything  you  want  it to,  but a brief explanation  of  your  Board's 
  2526.     purpose,  "rules",  etc. might be appropriate.  Parameter 47 allows the 
  2527.     SYSOP to give the file any name he wants.
  2528.  
  2529.     7.3.8 Name of "WELCOME" file
  2530.     ----------------------------
  2531.     This is the text file that each user sees EVERY time AFTER they log on.  
  2532.     Keep  it brief!   RBBS-PC will look for a "graphics" equivalent if  the 
  2533.     user  qualifies  for graphic displays (i.e.  it will display  the  file 
  2534.     HELLOG in lieu of HELLO).  Parameter 48 allows the SYSOP to tailor this 
  2535.     file's name to his own tastes.
  2536.  
  2537.     The  file  named  "PRELOG"  will be displayed as  soon  as  carrier  is 
  2538.     detected  and  BEFORE a user can log on.   It is displayed  immediately 
  2539.     after  the name of the RBBS-PC is shown (see option 19) and   providing 
  2540.     it 
  2541.  
  2542.     1. has the name PRELOG and,
  2543.  
  2544.     2. is on the same disk drive as the WELCOME file.
  2545.  
  2546.     SYSOP's  should use "PRELOG" to convey such information as (real  names 
  2547.     are  required,  300  baud  users will automatically be  denied  access, 
  2548.     etc.).
  2549.  
  2550.     7.3.9 Name of File Describing File Directories
  2551.     ----------------------------------------------
  2552.     See  Section 9.0 for a description of file directories -- they have  no 
  2553.     relation   to  DOS  2.x  and  above  "sub-directories!"   Most  SYSOP's 
  2554.     categorize  the files that are available for downloading  into  general 
  2555.     groups (games, utilities, etc.).  Parameter 49 allows the SYSOP to name 
  2556.     the file that describes these groupings anything he wants.
  2557.  
  2558.     7.3.10 Name of SYSOP's Command Menu
  2559.     -----------------------------------
  2560.     Parameter  50 allows the name of the text file containing the  commands 
  2561.     allowed those with SYSOP privileges to be any valid name.   Since  such 
  2562.     files  are constantly accessed,  it is recommended that the "menus"  be 
  2563.     placed  in a RAM disk in order to cut down on the wear and tear of your 
  2564.     disk drives.
  2565.  
  2566.     7.3.11 Name of Messages Subsystem Command Menu
  2567.     ----------------------------------------------
  2568.     Parameter  51 allows the name of the text file containing the  commands 
  2569.     available  to those in the "messages" subsystem to be any  valid  name.  
  2570.     Since  such files are constantly accessed,  it is recommended that  the 
  2571.     "menus"  be  placed in a RAM disk in order to cut down on the wear  and 
  2572.     tear of your disk drives.
  2573.  
  2574.     7.3.12 Name of File Subsystem Command Menu
  2575.     ------------------------------------------
  2576.     Parameter  52 allows the name of the text file containing the  commands 
  2577.     available  to  those  in the "files" subsystem to be  any  valid  name.  
  2578.     Since  such files are constantly accessed,  it is recommended that  the 
  2579.     "menus"  be placed in a RAM disk in order to cut down on the  wear  and 
  2580.  
  2581.                        Page 43 of 108
  2582. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2583.  
  2584.     tear of your disk drives.
  2585.  
  2586.     7.3.13 Name of Utilities Subsystem Command Menu
  2587.     -----------------------------------------------
  2588.     Parameter  53 allows the name of the text file containing the  commands 
  2589.     available  to those in the "utilities" subsystem to be any valid  name.  
  2590.     Since  such files are constantly accessed,  it is recommended that  the 
  2591.     "menus"  be  placed in a RAM disk in order to cut down on the wear  and 
  2592.     tear of your disk drives.
  2593.  
  2594.     7.3.14 Menu that Lists Available Conferences
  2595.     --------------------------------------------
  2596.     Parameter  54  is  the name of the text file listing the names  of  the 
  2597.     conferences  that  are  available.   Conference names  must  be  seven-
  2598.     characters  or less.   Additionally,  the SYSOP must already have  pre-
  2599.     formatted  the messages and users files associated with the conferences 
  2600.     (see section 15.0).
  2601.  
  2602.     7.3.15 File Containing Invalid User Names
  2603.     -----------------------------------------
  2604.     Parameter 55 is the name of the text file listing names that the  SYSOP 
  2605.     considers  inappropriate.   This file is used when a new user signs on.  
  2606.     The  new  user's  first and last name are  each  individually   checked 
  2607.     against the names in this file.
  2608.  
  2609.     The format of this file is as follows:
  2610.  
  2611.     <name>,
  2612.  
  2613.     An example of such a file would be:
  2614.  
  2615.     KILLER,
  2616.     MAN,
  2617.     THE,
  2618.     DOC,
  2619.     DOCTOR,
  2620.     DEATH 
  2621.  
  2622.     All  names  should be UPPER CASE!  If you create the file  using  IBM's 
  2623.     standard DOS text editor, EDLIN, each line should end with a comma.  If 
  2624.     you  create  the  file using COPY CON,  each line  should  end  with  a 
  2625.     carriage  return  (i.e.  the "enter" key).   The last line (when  using    
  2626.     COPY CON) should end with a Control Z,  F6,  and then carriage  return. 
  2627.     BASIC  will  treat  either  a comma or a carriage  return  as  a  field 
  2628.     delimiter.   You  need a field delimiiter following each of the  names.  
  2629.     If  the  above  file  existed,  any new user who logged  and  used  the 
  2630.     following names would be denied access:
  2631.  
  2632.     Byte Killer
  2633.     Kilo Man
  2634.     Doctor Death
  2635.     PC Doctor
  2636.     The Best
  2637.  
  2638.  
  2639.  
  2640.  
  2641.                        Page 44 of 108
  2642. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2643.  
  2644.     7.3.16 Factor to Extend Session Time For Uploads
  2645.     ------------------------------------------------
  2646.     Parameter  56  allows  a SYSOP to "reward" users who  upload  files  by 
  2647.     adding some multiple of the elapsed time it took for the file upload to 
  2648.     the  current  session time.   This should be used judiciously  as  some 
  2649.     users  may abuse this by repeatedly uploading COMMAND.COM or some other 
  2650.     meaningless file.  This extends only the user's current session and NOT 
  2651.     the elapsed time the user may be limited to per day via parameter 15.
  2652.  
  2653.     7.3.17 Default System Type for New Callers
  2654.     ------------------------------------------
  2655.     Parameter  57  allows a SYSOP to set the default system  type  for  new 
  2656.     users  to something other than IBM PC  (i.e.  KAYPRO,  COLUMBIA,  WANG, 
  2657.     etc.).  
  2658.  
  2659.     7.3.18 Drive Available for Uploading
  2660.     ------------------------------------
  2661.     Parameter  58  specifies  the  letter  of the  single  drive  available  
  2662.     that this copy of RBBS-PC can upload files to. When a file is uploaded, 
  2663.     the  file  specified  by  CONFIG parameter  11  will  be  automatically 
  2664.     appended  with the file name,  file size,   date of upload,  and  short 
  2665.     description as specified by the user.  
  2666.  
  2667.     7.3.19 Name of Directory to Update for Uploads
  2668.     ----------------------------------------------
  2669.     Parameter   #   59  of the CONFIG program asks for  the  name  of   the  
  2670.     directory   into   which  the  file   name,   file   size,   and   file  
  2671.     description  of  uploaded files can be recorded.   The default name  is 
  2672.     99.DIR  and   it  must  be a text file  on  the  drive  designated  for 
  2673.     uploading (see section 7.3.19).
  2674.  
  2675.     7.3.20 Drives Available for Downloading
  2676.     --------------------------------------
  2677.     Parameter  60 specifies the letters of the drives from which files  can  
  2678.     be  downloaded.    The  order in which they are specified is the  order 
  2679.     in  which  the  drives will be searched.    If the order is BAC,   then 
  2680.     drive  B will  be  searched  first for the file,   then drive  A,   and 
  2681.     finally drive  C.    While  there can be duplicate files on each of the 
  2682.     drives,  the first file  found  will be the one downloaded to the user.
  2683.  
  2684. 7.4 Parameters for RBBS-PC "system" Files
  2685. -----------------------------------------
  2686.     7.4.1 Name of "MESSAGES" file
  2687.     -----------------------------
  2688.     Parameter  61  allows the SYSOP to specify the file name for  the  file 
  2689.     used by RBBS-PC to hold the messages on the bulletin board.   This file 
  2690.     canNOT  have an extension because RBBS-PC appends the extension  ".BAK" 
  2691.     to the file name when "packing" the messages file.
  2692.  
  2693.     7.4.2 Name of the "CALLERS" file
  2694.     --------------------------------
  2695.     RBBS-PC  maintains  a  log of user activity on a  "callers"  file.   It 
  2696.     contains  information on the date,  time,  communications parameters of 
  2697.     who  logged  on;  what they uploaded or downloaded;  and  any  security 
  2698.     violations  or  errors that were generated.   Parameter 62  allows  the 
  2699.     SYSOP  to  specify the fully qualified name for the file  that  RBBS-PC 
  2700.  
  2701.                        Page 45 of 108
  2702. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2703.  
  2704.     uses for this log.
  2705.  
  2706.     7.4.3 Name of file containing "Comments" for the SYSOP
  2707.     ------------------------------------------------------
  2708.     Instead  of  leaving a "message",  a user may leave a comment  for  the 
  2709.     SYSOP  that  is readable only by the SYSOP.   Parameter 63  allows  the 
  2710.     SYSOP  to specify the fully qualified name for the file used by RBBS-PC 
  2711.     to store users' comments.
  2712.  
  2713.     7.4.4 Name of the "USERS" file
  2714.     ------------------------------
  2715.     RBBS-PC  keeps  a profile of each user who logs on in a  "user  record" 
  2716.     (see Appendix A for a layout of this record).   Parameter 64 allows the 
  2717.     SYSOP to specify the file name for this file.  This file canNOT have an 
  2718.     extension because RBBS-PC appends the extension ".BAK" to the file name 
  2719.     when "packing" the users file.
  2720.  
  2721.     7.4.5 Extended Logging To "CALLERS" File
  2722.     ----------------------------------------
  2723.     If  parameter  65  is selected the following ten  additional  items  of  
  2724.     information are included in the CALLERS file:
  2725.  
  2726.      1) "Connect not completed"
  2727.      2) "Sleep disconnect"
  2728.      3) "Caller changed name/address"
  2729.      4) "Newuser"
  2730.      5) "Bulletin# read"
  2731.      6) "Sysop initiated Chat"
  2732.      7) "Entered Conference name"
  2733.      8) "Time limit exceeded"
  2734.      9) "Left comment at time"
  2735.     10) "Logged off at time"
  2736.  
  2737.     It  should be remembered that for each occurrance  of  the  above,  the 
  2738.     CALLERS file will increase by 64 bytes.   Unless you either have a hard 
  2739.     disk  or  are willing to frequently maintain your system  in  order  to 
  2740.     leave  enough free space on the disk drives for new files,  this option 
  2741.     should NOT be activated. 
  2742.  
  2743. 7.5 Parameters for RBBS-PC "Doors"
  2744. ----------------------------------
  2745.     7.5.1  Enabling the "Door" Subsystem
  2746.     ------------------------------------
  2747.     Parameter  81 allows the SYSOP to enable RBBS-PC to exit and return  to 
  2748.     the system (i.e.  DOS).   The batch file out of which RBBS-PC is invoke 
  2749.     should  then check to see if a "door" is to be invoked.   A  "door"  is 
  2750.     simply  a batch file that the SYSOP has created which RBBS-PC users are 
  2751.     allowd to exit to and which will then take control of the remote user's 
  2752.     communication  port.   REMEMBER -- if you are going to use "doors"  the 
  2753.     program  EXITRBBS.EXE must be on the same drive or in the same DOS sub-
  2754.     directory as RBBS-PC.EXE.
  2755.  
  2756.     7.5.2 Name of Menu that Lists the Available "Doors"
  2757.     ---------------------------------------------------
  2758.     Parameter 82 allows the SYSOP to specify the fully qualified file  name 
  2759.     of  the  menu that lists the names of the "doors" available  to  users.  
  2760.  
  2761.                        Page 46 of 108
  2762. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2763.  
  2764.     RBBS-PC  checks this file to verify that the name of the door that  the 
  2765.     user requested is in the doors menu (see Section 11).
  2766.  
  2767.     7.5.3 File RBBS Builds Dynamically to Open a "Door"
  2768.     ---------------------------------------------------
  2769.     Parameter 83 allows the SYSOP to specify the fully qualified file  name 
  2770.     of  the file that RBBS-PC is to use when dynamically building the  .BAT 
  2771.     file that invokes the "door" selected by the user.  The batch file that 
  2772.     invokes  RBBS-PC  must  contain  an "IF" to check if  this  file  exist 
  2773.     whenever  RBBS-PC  terminates  and (if it exists) to  execute  it  (see 
  2774.     Section  10).   This is also the same file name that is used  when  the 
  2775.     SYSOP exits to DOS.
  2776.  
  2777.     7.5.4 File to Re-invoke RBBS-PC when a "Door" Closes
  2778.     ----------------------------------------------------
  2779.     When  a door finishes RBBS-PC is re-invoked.   Parameter 84 allows  the 
  2780.     SYSOP  to  specify the fully qualified file name of the .BAT file  that 
  2781.     should  be used to re-invoke RBBS-PC (see sections 10 & 11).   This  is 
  2782.     also  the  same  file  name that is used when the  SYSOP  returns  from 
  2783.     exiting to DOS.
  2784.  
  2785.     7.5.5 Drive to Look For COMMAND.COM On
  2786.     --------------------------------------
  2787.     Whenever  you  exit  to  a "door" or to DOS  (via  the  remote  SYSOP's 
  2788.     function  7),  RBBS-PC needs to know where to find COMMAND.COM.   In  a 
  2789.     network  environment  with  several  PC's  the  COMMAND.COM's  may   be 
  2790.     different  for each PC.   Parameter 85 allows the SYSOP to specify  for 
  2791.     the  each copy of RBBS-PC a disk drive on which to find the COMMAND.COM 
  2792.     appropriate for that copy of RBBS-PC.
  2793.  
  2794. 7.6 Parameters for RBBS-PC's Security
  2795. -------------------------------------
  2796.     7.6.1 Minimum Security Level to Get Into RBBS
  2797.     ---------------------------------------------
  2798.     Parameter  101 specifies the minimum security level users need in order 
  2799.     to  log onto  RBBS.    If  the default is less than this value,  no new  
  2800.     users  can  logon on.  This means that the board is closed to new users 
  2801.     and  access limited only to pre-registered users).   Since RBBS-PC   is  
  2802.     intended  to  facilitate  the free exchange  of  information,  you  are  
  2803.     strongly  urged not to use RBBS-PC in this way.   Section 12.1  details 
  2804.     other ways a SYSOP can control access to his RBBS-PC.
  2805.  
  2806.     7.6.2 Default Security Level for New Callers
  2807.     --------------------------------------------
  2808.     Parameter 102 specifies the security level that will be assigned to all  
  2809.     new  callers.    At  the very least,  it is recommended that this value 
  2810.     be equal to  the security level assigned to the C>omments and  G>oodbye 
  2811.     commands via option 109.
  2812.  
  2813.     7.6.3 Default Security Level for SYSOP
  2814.     --------------------------------------
  2815.     Parameter  103 allows you to specify the minimum security level a  user 
  2816.     must have to be considered an "assistant" SYSOP by RBBS-PC.   Even if a 
  2817.     user  has  a  high enough security level to see the  SYSOP's  menu  and 
  2818.     execute some or all of the SYSOP commands, the user will not be treated 
  2819.     as a SYSOP (i.e.  allowed to see the files upload/download when viewing 
  2820.  
  2821.                        Page 47 of 108
  2822. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2823.  
  2824.     the  CALLERS  file)  unless the user's security level is  equal  to  or 
  2825.     greater than that specified by parameter 103.
  2826.  
  2827.     7.6.4 File of File Names with Download Security
  2828.     -----------------------------------------------
  2829.     Parameter  104 specifies the name of the file that contains a  list  of 
  2830.     file  names   that  CANNOT  BE  DOWNLOADED (even if they are   on   the  
  2831.     disks  that  are  available for downloading) unless the user supplies a 
  2832.     password  and/or  is at  a  specific  security level.   If you want  to 
  2833.     have  no file security at  all,   just put no file names in this  file.  
  2834.     If  you include a password with a file  name  all users (including  one 
  2835.     with SYSOP privileges) must be able to  give  the password in order  to 
  2836.     download  the file.   For a more detailed description of this file  and 
  2837.     how  it works,  see section 12.4 -- "How to Implement the Security  for 
  2838.     Download Files."
  2839.  
  2840.     7.6.5 Minimum Security Level to See SYSOP's Menu
  2841.     ------------------------------------------------
  2842.     Parameter  105  prevents the SYSOP menu from being displayed  (even  if  
  2843.     the  user  has  a security level of a SYSOP as specified in option 103) 
  2844.     unless the user  is also at this security level. 
  2845.  
  2846.     7.6.6 Minimum Security Level to Use RBBS-PC "Doors"
  2847.     ---------------------------------------------------
  2848.     Parameter 106 allows the SYSOP to set the minimum security level a user 
  2849.     must  have to exit RBBS-PC via a "door".   This security level must  be 
  2850.     equal to or higher than the security level for the "D>oor" command (see 
  2851.     Parameter 110).
  2852.  
  2853.     7.6.7 Maximum # of Security Violations Before Lockout
  2854.     -----------------------------------------------------
  2855.     Parameter  107  allows  a maximum number of security  violations  (i.e.  
  2856.     attempts  to  download protected files) before the user is  logged  off 
  2857.     and locked out.
  2858.  
  2859.     7.6.8 Security Levels for Each Command
  2860.     --------------------------------------
  2861.     Parameters  108  through 111 allow the SYSOP to set  up  the   security  
  2862.     levels  required to issue the commands in the SYSOP,   Main Menu,  File 
  2863.     Subsystem,  and  Utilities Subsystem (respectively).   All the commands 
  2864.     in each area can  be  given  the same security level  or,   optionally,  
  2865.     a specific command can  be  given a unique security level.
  2866.  
  2867.     7.6.9 File with Privileged Group Passwords
  2868.     ------------------------------------------
  2869.     Parameter  112 specifies  the file name which contains  the  privileged  
  2870.     group    passwords   that  allow  users  to  change  temporarily  their 
  2871.     security,   time  on  the system,   etc.  -- if the SYSOP has set it up 
  2872.     that way.   Callers shift to  a  group  password by changing passwords.  
  2873.     If  the  password  they  select is found in  the  file  containing  the 
  2874.     privileged  passwords,  their private logon password is  unchanged  and 
  2875.     they  receive the security level and/or time limit associated with  the 
  2876.     group  password.  If you have no group passwords,  just put nothing  in  
  2877.     this  file.    For a more detailed description of this file and how  it 
  2878.     works, see section 12.3 -- "How to Implement the Password File."
  2879.  
  2880.  
  2881.                        Page 48 of 108
  2882. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2883.  
  2884.     7.6.10 Maximum # of Password Changes Per Session
  2885.     ------------------------------------------------
  2886.     Parameter  113 allows the SYSOP to specify the maximum number of  times  
  2887.     users  can change their passwords in a given session.
  2888.  
  2889.     7.6.11 Minimum Security for Temporary Password Changes
  2890.     ------------------------------------------------------
  2891.     Parameter 114 is the minimum security level required in order for users 
  2892.     to   change  temporarily  their  security or  time on  the  system  via 
  2893.     privileged group passwords.   If users do not have the minimum security 
  2894.     level to temporarily change their password,  ALL password changes  that 
  2895.     they  make will be permanent -- even if the password they select is  in 
  2896.     the temporary password file named in parameter 112 of CONFIG!
  2897.  
  2898.     7.6.12 Minimum Security to Overwrite Files on Uploads
  2899.     -----------------------------------------------------
  2900.     Parameter  115  allows  the  SYSOP to specify a security   level   that  
  2901.     has  the  privilege  of  overwriting  files (i.e.  files  that  already  
  2902.     exist)  when  uploading.
  2903.  
  2904.     7.6.13 Security Level of Conference "Viewers"
  2905.     ---------------------------------------------
  2906.     Parameter  116 allows the SYSOP to specify a temporary  security  level 
  2907.     that  will be in effect when a user wishes to "view" a conference.   In 
  2908.     this  way  a user might be able to S>can  (i.e.  see  the  date,  time, 
  2909.     subject,  etc.)  of  the messages in a conference without having to  be 
  2910.     pre-registered in the conference.
  2911.  
  2912.     Not currently implemented (as of CPC13-1A).
  2913.  
  2914.     7.6.14 Security Level Exempt from Purge of USERS File  
  2915.     -----------------------------------------------------
  2916.     When the SYSOP "purges" the USERS file,  all users who have not  signed 
  2917.     on  within  the number of months specified in parameter 16 are  deleted 
  2918.     from  the file with the exception of those who have been  "locked  out" 
  2919.     and  those  whose  security  level is equal to  or  greater  than  that 
  2920.     specified in parameter 117.  
  2921.  
  2922. 7.7 Parameters for Multiple RBBS-PC's
  2923. -------------------------------------
  2924.     7.7.1 Maximum Number of Concurrent RBBS-PC's
  2925.     --------------------------------------------
  2926.     RBBS-PC  CPC13-1A  allows  multiple  RBBS-PC's  to  run  in  the   same 
  2927.     environment/network and share many of the same files.  If you ever plan 
  2928.     to  do  this  or if you are going to do this,  set this number  to  the 
  2929.     MAXIMUM number you ever envision running.  Up to 36 RBBS-PC's can share 
  2930.     the same files.   Depending on the environment,  4 to 5 copies of RBBS-
  2931.     PC's may turn out to be the operationally effective maximum.  Parameter 
  2932.     121  allows  you to specify the maximum number of  RBBS-PC's  that  the 
  2933.     MESSAGES file should be initialized for.
  2934.  
  2935.     7.7.2 Environment Running Concurrent RBBS-PC's
  2936.     ----------------------------------------------
  2937.     Parameter  122  allows the SYSOP to designate the type  of  environment 
  2938.     that  multiple  copies of RBBS-PC will be sharing files  in.   This  is 
  2939.     necessary so that RBBS can use the mechanism that is appropriate to the 
  2940.  
  2941.                        Page 49 of 108
  2942. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  2943.  
  2944.     specific  environment when sharing files.   RBBS-PC CPC13-1A  currently 
  2945.     can handle the following environments for multiple RBBS-PC's:
  2946.  
  2947.              1.  MultiLink (The Software Link, Inc.)
  2948.              2.  OmniNet (Corvus)
  2949.              3.  PC-Net (Orchid)
  2950.  
  2951.     NOTE:   Many manufacturers utilize Orchid's network conventions.  As an 
  2952.     example,  AST and Alloy are both vendor's whose "network" is .EXE file- 
  2953.     compatable with Orchid's (i.e. "An Orchid by any other name is still an 
  2954.     ...").  If you have a network of PC's, check with the vendor to see how 
  2955.     compatable their network is with those supported by RBBS-PC. 
  2956.  
  2957.     7.7.3 Method RBBS-PC Uses to "Recycle" When Users Logoff
  2958.     --------------------------------------------------------
  2959.     Some  local  area  network  environments  are  not  designed  to   have 
  2960.     applications  constantly  branch  back  to the  beginning  and  re-open 
  2961.     already open files.   If you are in this environment or simply want  to 
  2962.     run  external  programs  after  a user logs off  or  RBBS-PC  recycles, 
  2963.     parameter  123  allows  you  to elect  to  do  this.   If  you  specify 
  2964.     "internal",  RBBS-PC will function as it currently does and branch back 
  2965.     to  its beginning.   If you specify "system",  RBBS-PC will exit to DOS 
  2966.     and  (if  you  are running RBBS-PC out of a .BAT  file)  you  can  then 
  2967.     automatically  invoke any other "housekeeping" programs you want before 
  2968.     re-invoking  RBBS-PC.   It  should  be  noted  that  this  will  add  a 
  2969.     considerably delay to RBBS-PC's recycling time as RBBS-PC will have  to 
  2970.     reloaded back into memory every time it recycles.
  2971.  
  2972.     7.7.4 Maximum Number of Records in the "USERS" File
  2973.     ---------------------------------------------------
  2974.     Like  the MESSAGES file,  the USERS file must also be static in  length 
  2975.     for RBBS-PC CPC13-1A.   Parameter 124 allows the SYSOP to set the  size 
  2976.     of  the USERS file.   RBBS-PC automatically keeps track of the  records 
  2977.     available  for use in this file and does the necessary  "housekeeping."   
  2978.     When the USERS file get full (i.e. all its records are used up) and the 
  2979.     SYSOP  neither "packs" it nor increases the size of the  file,  no  new 
  2980.     users will be able to log on until one of these two events occurs.
  2981.  
  2982.     7.7.5 Maximum Number of Records in the "MESSAGES" File
  2983.     ------------------------------------------------------
  2984.     RBBS-PC CPC13-1A requires that the "Messages" file be static in length.  
  2985.     It  automatically keeps track of the next record available and does the 
  2986.     necessary housekeeping to maintain the integrity of the file. Parameter 
  2987.     125  allows the SYSOP to set the size of this  file.   CONFIG.BAS  will 
  2988.     automatically determine what size the current file is and will reformat 
  2989.     a pre-CPC12-3A MESSAGES file if it finds one.   If you do not  increase 
  2990.     the  size of your existing MESSAGES file,  no one will be able to leave 
  2991.     any new messages.  Similarly, when the MESSAGES file get full (i.e. all 
  2992.     its records are used up) and the SYSOP neither "packs" it nor increases 
  2993.     the size of the file,  no one will be able to leave a message until one 
  2994.     of these two events occurs.
  2995.  
  2996.  
  2997.  
  2998.  
  2999.  
  3000.  
  3001.                        Page 50 of 108
  3002. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3003.  
  3004.     The  minimum size of the MESSAGES file is equal to
  3005.  
  3006.       1 (The  "checkpoint" record)
  3007.     + the maximum number of concurrent RBBS-PC's ("node" records)
  3008.     + the maximum number of messages allowed X 5
  3009.       (each messages is assumed to average five 128-byte records)
  3010.  
  3011.     Therefore,  if  option 121 of CONFIG where 12 and option 126 of  CONFIG 
  3012.     where  50,  the  minimum number of records that could be specified  for 
  3013.     option 125 would be
  3014.  
  3015.        1 (The "checkpoint record)
  3016.     + 12 (The number of "node" records)
  3017.     +250 (50 messages x 5 128-byte records each)
  3018.     ----
  3019.      263 records for the MESSAGES file
  3020.  
  3021.     7.7.6 Maximum Number of Messages Allowed
  3022.     -----------------------------------------
  3023.     Parameter   # 126 lets you set the maximum number of messages that  the 
  3024.     SYSOP will allow on the  system at any one time.   The number will have 
  3025.     to  be  based on the size  of  the  average  message on  your  bulletin 
  3026.     board.   Most messages require about  600  bytes  on the average.   The 
  3027.     absolute  upper  limit on the number of messages   is   250.    If  you 
  3028.     specify 250 messages,   you can expect that the MESSAGES  file  will be 
  3029.     preformatted to more than 160K in size.
  3030.  
  3031.     7.7.7 Conference File Maintenance
  3032.     ---------------------------------
  3033.     Parameter  #  127  allows  "conference"  files  to  be  maintained.   A 
  3034.     "conference" consists of a message file and, if a "private" conference, 
  3035.     a   corresponding  users  file.   The name of  the  conference  can  be 
  3036.     anything  that  the  SYSOP  selects  but  can  not  be  longer  than  7 
  3037.     characters.   The  message file's name for a conference consists of the 
  3038.     conference  name  plus the characters "M.DEF".   The user  file's  name 
  3039.     assocated  with  "private" conferences consists of the conference  name 
  3040.     plus  the  characters "U.DEF".   Parameter # 127 allows  the  SYSOP  to 
  3041.     create, expand, or contract either or both of the files associated with 
  3042.     a  "conference."   This  occurs ONLY when the SYSOP "ENDs"  the  CONFIG 
  3043.     session  by pressing the key marked END.   Parameter # 127  allows  the 
  3044.     SYSOP  to  perform  all  the  functions on page  8  of  CONFIG  on  the 
  3045.     conference that was named/selected with Parameter # 127.  For a further 
  3046.     discussion of "conferences" see section 15.0.
  3047.  
  3048. 7.8 RBBS-PC SYSOP Utilities
  3049. ---------------------------
  3050.     7.8.1 Packing the "MESSAGES" file
  3051.     ---------------------------------
  3052.     The message file contains all messages for  the  RBBS-PC  system.    As 
  3053.     messages are killed they are only flagged as inactive.    Parameter 141 
  3054.     should  be  used  periodically to recover the space occupied   by   the 
  3055.     killed messages.   After completion,   only the text of active messages  
  3056.     will  be  present and the old file will remain on the system  with  the 
  3057.     name of  MESSAGES.OLD.   Also, you will need enough free disk space for 
  3058.     the MESSAGES  and MESSAGES.BAK files when packing the MESSAGES file  or 
  3059.     the  packing cannot  be  performed.   If  enough space is not found the 
  3060.  
  3061.                        Page 51 of 108
  3062. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3063.  
  3064.     packing   will   terminate  abnormally and the MESSAGES  file  will  be 
  3065.     recovered.
  3066.  
  3067.     7.8.2 Rebuilding the "USERS" File
  3068.     ---------------------------------
  3069.     Parameter  142 removes deleted users and users who  have  not  been  on 
  3070.     the system within the number of months specified using parameter 16  in 
  3071.     CONFIG.   You   should   have  enough  free disk space  for  USERS  and 
  3072.     USERS.BAK or the  rebuilding  will terminate abnormally (the USERS file 
  3073.     will be restored).   It is important to note that beginning with CPC12-
  3074.     5A,  the  USERS  file  is  no longer a random  file  that  is  accessed 
  3075.     sequentially but now is a random file that is accessed directly.   When 
  3076.     a  user  logs  on RBBS-PC "hashes" the users name to  find  the  user's 
  3077.     record  directly in the USERS file.   That is why the USERS file's size 
  3078.     is a power of 2 (i.e.  256,  1024,  etc.).  This allows users to log on 
  3079.     much more quickly to RBBS-PC's that have a very large number of users.
  3080.  
  3081.     7.8.3 Printing Message Header Records
  3082.     -------------------------------------
  3083.     Parameter  143  will  display  the message headers   of  all  messages,  
  3084.     active  and killed,   that are present in the message file.    This  is 
  3085.     left  over from one of the many "debugging" stages of RBBS-PC prior  to 
  3086.     CPC09.   Following  the policy of making all changes  "additive",  this 
  3087.     function has been retained.  It may help some SYSOP's recover from disk 
  3088.     hardware failures.
  3089.  
  3090.     7.8.4 Renumbering Messages
  3091.     --------------------------
  3092.     Parameter 144 permits messages to be renumbered  sequentially  starting  
  3093.     from a specified message  using  whatever  starting  number  you  wish.   
  3094.     Please note that there is not much error checking to be  sure  that the 
  3095.     new numbers do not duplicate those of lower numbered  active  messages.   
  3096.     When complete,  the next message to be created will be the next  higher 
  3097.     number  from  the resequence.   Unpredictable results will occur  if  a 
  3098.     SYSOP creates messages with duplicate numbers!
  3099.  
  3100.     7.8.5 Repairing the MESSAGES file
  3101.     ---------------------------------
  3102.     Parameter  145  goes  through the MESSAGES file  and  reconstructs  the 
  3103.     chains  that  link  the messages together.   MESSAGES files  that  have 
  3104.     "blank" messages or abbreviated messages (i.e.  some lines of text  are 
  3105.     missing) can be repaired with this facility.  
  3106.  
  3107.     7.8.6 Initialize Hayes 2400 Firmware for RBBS-PC
  3108.     ------------------------------------------------
  3109.     Parameter  146 allows the SYSOP to set the Hayes 2400 firmware to match 
  3110.     RBBS-PC's requirements as described in section 8.1.   Additionally, the 
  3111.     SYSOP  may prevent callers from using the the Hayes 2400  connected  to 
  3112.     the  RBBS-PC system for remote digital loop back testing.   This is the 
  3113.     recommended setting for parameter 146.
  3114.  
  3115.  
  3116.  
  3117.  
  3118.  
  3119.  
  3120.  
  3121.                        Page 52 of 108
  3122. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3123.  
  3124. 7.9 Use of DOS Subdirectories
  3125. -----------------------------
  3126.     7.9.1  Using DOS Subdirectories
  3127.     -------------------------------
  3128.     Parameter  161 allows the SYSOP to indicate that DOS subdirectories are 
  3129.     to  be used by RBBS-PC.   The support of DOS subdirectories began  with 
  3130.     RBBS-PC version CPC13-1A.  If this option is selected, CONFIG will also 
  3131.     display option 164.
  3132.  
  3133.     7.9.2  Upload DOS Subdirectory
  3134.     ------------------------------
  3135.     Parameter  162  allows the SYSOP to indicate the  DOS  subdirectory  to 
  3136.     which uploads are to be written.   RBBS-PC will prepend the upload disk 
  3137.     drive  to it (see parameter 58 described in Section 7.3.18) and  append 
  3138.     the upload file name after it when uploads are written to disk.   If an 
  3139.     upload DOS subdirectory is selected the upload directory (see parameter 
  3140.     59  described in Section 7.3.19) must be on the upload disk within that 
  3141.     DOS  subdirectory.   Just as there can only be one disk drive  and  one 
  3142.     upload  directory  specified,  there can only be one  DOS  subdirectory 
  3143.     specified for uploads.
  3144.  
  3145.     7.9.3 Download DOS Subdirectories
  3146.     ---------------------------------
  3147.     Parameter 163 allows the SYSOP to indicate that DOS subdirectories  are 
  3148.     to  be used when searching for files on downloading.  A valid  download 
  3149.     drive  followed by a colon,  a reverse backslash,  and the subdirectory 
  3150.     name that is to be searched must be entered.   If the root directory is 
  3151.     also  to be searched,  just enter a valid download drive followed by  a 
  3152.     colon.   The search is similar to that described for parameter 60  (see 
  3153.     Section  7.3.20).   Each download disk drive is searched for only those 
  3154.     subdirectories  that were specfied as existing on that specific  drive. 
  3155.     If  two  download  DOS  subdirectories  are  specified  (A:\TEST1   and 
  3156.     B:\TEST2) and two download disk drives for parameter 60 (A and B),  the 
  3157.     search for a download file will be in the following order:
  3158.  
  3159.             A:\TEST1\filename
  3160.             B:\TEST2\filename
  3161.  
  3162.     It is possible to have the same subdirectory name on different download 
  3163.     drives.   Each  would have to be individually specified  (A:\GAMES  and 
  3164.     B:\GAMES   If  they where,  the search for a download file would be  as 
  3165.     follows:
  3166.  
  3167.             A:\GAMES\filename
  3168.             B:\GAMES\filename
  3169.  
  3170.     7.9.4 List, Change, Add, Delete DOS Subdirectories Used
  3171.     -------------------------------------------------------
  3172.     Parameter  164 only appears if option 161 has been specified as  "YES."  
  3173.     This parameter allows the SYSOP to list, change, add, or delete the DOS 
  3174.     subdirectories  to  be  used for either uploading  (parameter  162)  or 
  3175.     downloading (parameter 163).  CONFIG does NOT acutally create or delete 
  3176.     such  DOS  subdirectories  -- that's up to the SYSOP to  do  using  the 
  3177.     standard DOS commands.  Parameter 164 simply allows the SYSOP which DOS 
  3178.     subdirectories will (or may) exist when RBBS-PC is running.
  3179.  
  3180.  
  3181.                        Page 53 of 108
  3182. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3183.  
  3184. 8.0 HAYES COMMANDS AND MODEM SWITCH SETTING CONSIDERATIONS
  3185. ----------------------------------------------------------
  3186. 8.1 Hayes Modem Switch Setting Considerations
  3187. ---------------------------------------------
  3188. RBBS-PC is tested with a HAYES Smartmodem 1200 (i.e.  external). The switch 
  3189. settings on the modem must be as follows:
  3190.  
  3191.               switch -- 12345678
  3192.               setting - UUDDDUUD
  3193.  
  3194. Recognizing  that there are many "Hayes-compatible" (and not so compatible) 
  3195. modems in use,  this section is intended to assist those adventurous  souls 
  3196. who  use such modems and need some guidance on what the otherwise  mystical 
  3197. Hayes switch settings mean.  The following table may be of some help:
  3198.  
  3199.               Setting            Function to RBBS-PC
  3200. Hayes    -----------------
  3201. Switch   Factory   RBBS-PC
  3202.          -------   -------
  3203.  
  3204.   1       Down       Up       Allows RBBS-PC to control the modem using the
  3205.                               RS-232C DTR lead (pin 20).
  3206.  
  3207.   2        Up        Up       Not meaningful to RBBS-PC (could be down) and
  3208.                               is used to indicate if result codes are to be
  3209.                               English words or single digits.  RBBS-PC sets
  3210.                               this with the Hayes "V" command.  
  3211.  
  3212.   3       Down      Down      Not meaningful to RBBS-PC (could be down) and
  3213.                               is used to indicate if result codes are to be
  3214.                               sent to RBBS-PC.  RBBS-PC sets this with the
  3215.                               Hayes "Q" command.
  3216.  
  3217.   4        Up       Down      The modem does not echo characters unless
  3218.                               half-duplex is selected and the modem is on-
  3219.                               line. 
  3220.  
  3221.   5       Down      Down      Modem is NOT to answer incoming calls.  RBBS-
  3222.                               PC monitors the ring indicator (pin 22) to
  3223.                               determine if the phone is ringing.  If it is,
  3224.                               RBBS-PC will issue the necessary commands to
  3225.                               the modem.
  3226.  
  3227.   6       Down       Up       RBBS-PC checks for the carrier signal using
  3228.                               the RS-232C Carrier Detect lead (pin 8).  If
  3229.                               carrier is lost, RBBS-PC hangs up the phone
  3230.                               and re-cycles to await the next call.
  3231.  
  3232.   7        Up        Up       Not really required by RBBS-PC.   However  in 
  3233.                               the "down" position, the telephone extension 
  3234.                               light will illuminate on a multi-line 
  3235.                               installation when the modem answers a call.
  3236.  
  3237.   8       Down      Down      Enables the Smartmodem 1200 to recognize the
  3238.                               Hayes commands issued by RBBS-PC.
  3239.  
  3240.  
  3241.                        Page 54 of 108
  3242. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3243.  
  3244. The most common problem, "RBBS-PC continually recycles," occurs when switch 
  3245. six is left in the factory position.
  3246.  
  3247. These   switch  settings  do  not  have  to  be  changed  for  most   other  
  3248. communications software packages.  (You can leave the switches set as shown  
  3249. above if you use PC-TALK for your smart terminal  communications.  However,  
  3250. you will be advised to give the modem an "ATZ" command before using PC-TALK   
  3251. in   order  to reset the registers correctly.)  RBBS-PC should be used only 
  3252. with  versions 123 and above of the Hayes Smartmodem 1200 and with  version 
  3253. 247  and  above of the Hayes Smartmodem 2400.   Earlier versions   do   not  
  3254. answer   the  telephone  properly.    The  ATI  command  will   cause   the  
  3255. Smartmodem to tell you its version.
  3256.  
  3257. Hayes is now shipping an external modem called the Hayes 1200FE that has 10 
  3258. switch  settings.   To run RBBS-PC switches 9 and 10 of the 1200FE must  be 
  3259. left  up  (the factory setting).   Hayes is also now shipping  an  internal 
  3260. modem called the Hayes 1200BFE that has 6 switch settings.   To run RBBS-PC 
  3261. switches 4,  5,  and 6 must be left up (the factory setting).  If you can't 
  3262. figure  out what the switching settings on these new modems should be based 
  3263. on  the  switch settings given for the "original" Hayes  1200,  CALL  HAYES 
  3264. TECHNICAL SUPPORT!  Since I don't have the newer modems, I won't be of much 
  3265. help if you call me.
  3266.  
  3267. 8.2 Hayes Command's Considerations
  3268. ----------------------------------
  3269. The  Hayes commands used to control the modem are all external  to  RBBS-PC 
  3270. beginning  with version CPC13-1A.   These command strings are in the  RBBS-
  3271. PC.DEF  file which may be modified by any file editor that can handle ASCII 
  3272. files (i.e. DOS' EDLIN utility).
  3273.  
  3274. The  RBBS-PC.DEF  file  contains five Hayes command strings -- one  on  the 
  3275. second  line of the .DEF file and four on the last line of the  .DEF  file.  
  3276. Using  RBBS-PC's  CONFIG  utility's defaults,  the command strings  are  as 
  3277. follows.
  3278.  
  3279. The first command string, on the second line of the .DEF file is:
  3280.  
  3281. Command    Meaning
  3282. AT         Signifies the following characters are Hayes commands.
  3283. M0         Turn the monitor speaker on the modem off permanently.
  3284. Q1         Do not return result codes to the PC.
  3285. S2=255     Disable escape code detection.
  3286. S10=30     Do not drop disconnect user unless carrier drops for more
  3287.            than seconds.
  3288. E0         Do not echo characters back to the PC when receiving Hayes
  3289.            commands.
  3290. S0=0       Disable the modem from automatically answering the phone
  3291.            (let RBBS-PC control when the phone is answered).
  3292.  
  3293. This  command is the second command issued to the modem every time RBBS-PC
  3294. gets ready for calls.
  3295.  
  3296.  
  3297.  
  3298.  
  3299.  
  3300.  
  3301.                        Page 55 of 108
  3302. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3303.  
  3304. The  second  command  string in the .DEF file is the  first  Hayes  command 
  3305. string on the last line of the .DEF file and is:
  3306.  
  3307. Command    Meaning
  3308. AT         Signifies the following characters are Hayes commands.
  3309. Z          Causes a software reset and applies all default values.
  3310.  
  3311. This is the first command issued to the modem every time RBBS-PC gets ready 
  3312. for calls.
  3313.  
  3314. The  third  command  string in the .DEF file is the  second  Hayes  command 
  3315. string on the last line of the .DEF file and is:
  3316.  
  3317. Command    Meaning
  3318. AT         Signifies the following characters are Hayes commands.
  3319. S1?        Requests the modem to return the number of times that the phone
  3320.            has rung.
  3321.  
  3322. This  command string is only issued when CONFIG has been used to tell RBBS-
  3323. PC  to answer on a specific number of rings.   In the default settings  for 
  3324. CONFIG, this command is never used.
  3325.  
  3326. The  fourth command  string in the .DEF file is the  third  Hayes  command 
  3327. string on the last line of the .DEF file and is:
  3328.  
  3329. Command    Meaning
  3330. AT         Signifies the following characters are Hayes commands.
  3331. Q0         Tells the modem to send result codes to the PC.
  3332. X1         Tells the modem to send "extended" result codes to the PC.
  3333. V1         "Extended" result codes are to be transmitted as words.
  3334. A          Tells the modem to answer the phone immediately.
  3335.  
  3336. This  command  is  ALWAYS  issued if the  default  settins  of  CONFIG  are 
  3337. selected.   RBBS-PC  utilizes  the extended verbal results  code  (CONNECT, 
  3338. CONNECT 300,  CONNECT 1200, and CONNECT 2400) to determine the callers baud 
  3339. rate.
  3340.  
  3341. Some  Hayes  300 modems doen't function with RBBS-PC because  they  do  not 
  3342. recognize the "X1" command.   If you have a modem like this,  simply remove 
  3343. the X1 command from the command string in the .DEF file.
  3344.  
  3345. The  fifth command  string in the .DEF file is the  fourth  Hayes  command 
  3346. string on the last line of the .DEF file and is:
  3347.  
  3348. Command    Meaning
  3349. AT         Signifies the following characters are Hayes commands.
  3350. Q1         Do not return result codes to the PC.
  3351. E1         Echo characters back to the PC when handling Hayes commands.
  3352. H1         Take the modem off the hook (i.e. busy out the line).
  3353. M0         Turn the monitor speaker on the modem off permanently.      
  3354.  
  3355. This  command is issued whenever the SYSOP is doing local maintenance (i.e. 
  3356. hits ESC).
  3357.  
  3358.  
  3359.  
  3360.  
  3361.                        Page 56 of 108
  3362. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3363.  
  3364. 9.0  USING MULTIPLE FILE DIRECTORIES
  3365. -------------------------------------
  3366. With  the advent of CPC12.0,  multiple file directories for downloads  were  
  3367. possible.   A  file  directory IS NOT A DOS "SUBDIRECTORY!"  It is simply a 
  3368. text  file that  the  SYSOP  has  created  which has a one-line  entry  for 
  3369. each file available for  downloading  in the format:
  3370.  
  3371. file name   extension  xxxx  mm-dd-yy  description
  3372.  
  3373. that associates a size,  date and description for each file name/extension.   
  3374. There  are a few conventions regarding download directories.   They are  as  
  3375. follows:
  3376.  
  3377.     o  The file directories must be text files.
  3378.     o  The file directories must have an extension of up to three
  3379.        characters.  The default extension is ".DIR".  The 8-character
  3380.        file name and extension can be anything you want as long as it
  3381.        is a valid DOS file name.
  3382.     o  There is only one file directory for uploads and it
  3383.        must be on the disk drive designated for uploads.
  3384.     o  Filename should start in column 1.
  3385.     o  Extension should start in column 10.
  3386.     o  Program size can be between columns 14 & 22.
  3387.     o  Date available for downloading must start in column 24 and
  3388.        should use MM-DD-YY or MM/DD/YY format.
  3389.     o  Description should start in column 34.
  3390.  
  3391. Most  SYSOP's tend to organize their file directories according to subject.   
  3392. The   primary  file  directory  usually  tells  how  you  list  the   other  
  3393. directories.  Logically, it looks like a tree structure as follows:
  3394.  
  3395.                             DIR.DIR
  3396.                                |
  3397.                                |
  3398.   --------------------------------------------------------------
  3399.   |       |        |       |      |       |      |       |     |
  3400. aa.DIR  bb.DIR  ............................................ zz.DIR
  3401.  
  3402. The suffixes aa through zz can be anything you want.   Most RBBS-PC SYSOP's 
  3403. use numbers  (i.e. 1.DIR, 2.DIR, etc.).  The command L;2 would list 2.DIR.
  3404.  
  3405. The   SYSOP   has the option of letting users know the name of   the   file  
  3406. directory for uploads.  Some SYSOPS do and some don't. You may exclude both  
  3407. the   directory  of directories and the upload directory from the list  new  
  3408. function  (N) within the file subsystem (see sections 7.2.10 and 7.2.11). 
  3409.  
  3410.  
  3411.  
  3412.  
  3413.  
  3414.  
  3415.  
  3416.  
  3417.  
  3418.  
  3419.  
  3420.  
  3421.                        Page 57 of 108
  3422. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3423.  
  3424. 10.0  SETTING UP ".BAT" FILES FOR RBBS-PC
  3425. -----------------------------------------
  3426. Many SYSOPS have set up batch files to invoke RBBS-PC automatically and  to  
  3427. re-invoke  RBBS-PC should there be a power outage.  These files range  from  
  3428. the  simple to the sublime in terms of complexity.   In a multiple  RBBS-PC 
  3429. environment,  these .BAT files CANNOT BE SHARED.   If you are going to exit 
  3430. RBBS-PC  and  transfer  control  to DOS remotely (either  via  the  SYSOP's 
  3431. function 7 or  via "doors"), it is necessary that:
  3432.  
  3433.      1.  RBBS-PC be executed from a batch file.
  3434.      2.  The batch file which is executing RBBS-PC contain
  3435.          an "IF" statement that checks for the existence of the
  3436.          batch file which RBBS-PC dynamically builds when
  3437.          either "doors" or SYSOP function 7 is invoked.
  3438.      3.  Within the "IF" statement, the logic exists such that the
  3439.          batch file dynamically built by RBBS-PC for the "doors"
  3440.          functions or SYSOP function 7 will be invoked if it exists.
  3441.  
  3442. As a very simple example, let us assume that:
  3443.  
  3444.      1.  the batch file that invokes RBBS-PC is named A:RBBS.BAT,
  3445.          and that is what was entered for option 84 of CONFIG.BAS,
  3446.      2.  the name of the batch file that RBBS-PC will build
  3447.          dynamically for either "doors" or SYSOP function 7 is
  3448.          A:RCTTY.BAT, and that is what was entered for option 83 and
  3449.      3.  the compiled version of RBBS-PC is being executed and is
  3450.          named RBBS-PC.EXE and is on the default disk drive.
  3451.      4.  you have elected to use the watchdog utility program.
  3452.      5.  COM1 was designated as the communication port to be used by
  3453.          RBBS-PC.
  3454.  
  3455. Then   A:RBBS.BAT  (in  a  non-MultiLink  environment)  would  contain  the 
  3456. following:
  3457.  
  3458.      WATCHDG1 OFF
  3459.      IF EXIST A:RCTTY.BAT DEL A:RCTTY.BAT
  3460.      RBBS-PC x   (see note of values available for "x")
  3461.      IF EXIST A:RCTTY.BAT WATCHDG1 ON
  3462.      IF EXIST A:RCTTY.BAT A:RCTTY.BAT
  3463.      A:RBBS.BAT
  3464.  
  3465.     NOTE:   When running RBBS-PC.EXE, RBBS-PC will check for the "x" in the 
  3466.     command  line  that invoked RBBS-PC.   The "x" on the execute  line  is 
  3467.     extremely  important to the correct operation of RBBS-PC.   If you  are 
  3468.     running  in a local area network environment then the "x" should  be  a 
  3469.     number  between "1" and "0" or a letter between "A" and "Z".  If "x" is 
  3470.     omitted from the command line, RBBS-PC will look for a file named RBBS-
  3471.     PC.DEF.   RBBS-PC  uses   the  parameter   in  the   command  line   to  
  3472.     determine   the correct RBBSxPC.DEF file to use for  its  configuration 
  3473.     parameters.
  3474.      
  3475. Obviously the RBBS.BAT file could be as complex as you wanted it to be, but 
  3476. at the very least it would need the "IF" statements.
  3477.  
  3478.  
  3479.  
  3480.  
  3481.                        Page 58 of 108
  3482. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3483.  
  3484. 11.0 THE USE OF RBBS-PC "DOORS"
  3485. -------------------------------
  3486. The  RBBS-PC "door" concept is that of allowing a SYSOP to set up a  "door" 
  3487. through which users can exit from RBBS-PC and enter other applications.  In 
  3488. previous versions of RBBS-PC (i.e.  prior to CPC12-3A) this had been called 
  3489. "windows"  but  because  of the confusion this created with  the  WINDOWing 
  3490. concepts of other software, it has been re-labeled "doors".
  3491.  
  3492. RBBS-PC's   "doors"  are nothing more than .BAT files that the  SYSOP   has  
  3493. created   to   allow  users  to  exit  from  RBBS-PC   and   enter    other  
  3494. applications (i.e.  databases, etc.).  The SYSOP is responsible for writing  
  3495. the  .BAT  files that users will be allowed to invoke.  Assuming that RBBS-
  3496. PC is brought up by DOS via an autoexec file that invokes RBBS.BAT,  a door 
  3497. called  EDIT exists that consists of a .BAT file (EDIT.BAT) which  contains 
  3498. the commands CTTY,  EDLIN,  and RBBS.BAT.  In order to exit RBBS-PC (either 
  3499. for  a  "door" or for the remote SYSOP's function 7) without the code  that 
  3500. the  BASIC  compiler  generates for you dropping the  remote  user,  it  is 
  3501. necessary  to  "RUN"  to a dummy  program  called  EXITRBBS.EXE.   Here  is 
  3502. pictorially what happens:
  3503.  
  3504.                         DOS
  3505.                          |
  3506.                         \|/
  3507.                     AUTOEXEC.BAT
  3508.                          |
  3509.                         \|/
  3510.                       RBBS.BAT
  3511.                          |
  3512.                          +--------->RBBS-PC.EXE
  3513.                                         |
  3514.                                        \|/
  3515.                                       "RUN"
  3516.                                         |
  3517.                            /       EXITRBBS.EXE
  3518.                          +--------------+
  3519.                          | \
  3520.                        RBBS.BAT
  3521.                          |
  3522.                         \|/   
  3523.                     RCTTY.BAT<-----invokes door called "EDIT"
  3524.                          |
  3525.                         \|/
  3526.                      EDIT.BAT
  3527.                          |
  3528.                          +--------->EDLIN.COM
  3529.                                         |
  3530.                                         |
  3531.                       RBBS.BAT<--------ends
  3532.                          |
  3533.                          +--------->RBBS-PC.EXE
  3534.                                         |
  3535.                                         |
  3536.                                    welcome back from door
  3537.                                    and RBBS-PC continues
  3538.  
  3539.  
  3540.  
  3541.                        Page 59 of 108
  3542. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3543.  
  3544. To set up "doors" the SYSOP lists  the  names  of  these  .BAT files (which 
  3545. the  SYSOP  is responsible for  setting  up)  in  MENU5.    If  the   SYSOP  
  3546. has   indicated that  doors are  available  (via  CONFIG.BAS'  option  81), 
  3547. when a user invokes the D>oor command, RBBS-PC will:
  3548.  
  3549.     1.  List MENU5,
  3550.     2.  Check that the door that the user selects was specified in MENU5,
  3551.     3.  Check that the .BAT file exists (on the default drive),
  3552.     4.  Dynamically create a .BAT file with the name specified
  3553.         by the SYSOP in option 83 of CONFIG.BAS that:
  3554.             a.  invokes the .BAT file of the window specified,and
  3555.             b.  re-invokes RBBS-PC after the user EXITS from the
  3556.                 "door" by invoking the .BAT file that the SYSOP
  3557.                 specified in option 84 of CONFIG.BAS.
  3558.  
  3559. The   purpose of "doors" is to allow for the "horizontal" growth of   RBBS- 
  3560. PC.   Clearly  RBBS-PC has about all that IBM's BASIC compiler can  handle.   
  3561. In  order  to not limit the application of RBBS-PC either to BASIC  or  the  
  3562. current  compiler,   "doors" was chosen as a mechanism to allow SYSOP's  to  
  3563. make available other features (i.e.   databases,  games,  etc.).  Hopefully  
  3564. with  RBBS-PC as a base,  the limitations on doors will only be the SYSOP's  
  3565. resourcefulness AND IBM'S DISK OPERATING SYSTEM (see section 14)!
  3566.  
  3567. The   design of the .BAT file that is to be used as a "door"  is   critical  
  3568. and  is  the responsibility of the SYSOP.   At the very minimum  it  should  
  3569. handle  the communication port I/O.   This can be done in a very  primitive  
  3570. way  using  the  DOS CTTY command and and a  utility  similar  to  WATCHDOG 
  3571. (written by Jim Reinders) that is described in section 14.1.
  3572.  
  3573. Finally,  if  the preceding discussion of "doors" is a complete mystery  to 
  3574. you,  contact a SYSOP of an RBBS-PC that is using "doors" and ask for help.  
  3575. The  "door"  concept  stretches  IBM's DOS' capabilities  and  requires  an 
  3576. extraordinary knowledge of how both DOS and .BAT files work. 
  3577.  
  3578.  
  3579.  
  3580.  
  3581.  
  3582.  
  3583.  
  3584.  
  3585.  
  3586.  
  3587.  
  3588.  
  3589.  
  3590.  
  3591.  
  3592.  
  3593.  
  3594.  
  3595.  
  3596.  
  3597.  
  3598.  
  3599.  
  3600.  
  3601.                        Page 60 of 108
  3602. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3603.  
  3604. 12.0  THE SECURITY FEATURES OF RBBS-PC
  3605. --------------------------------------
  3606. RBBS has always been an open system designed for public use. A SYSOP should  
  3607. always  ASSUME that EVERY FILE ON THE PC running RBBS-PC CAN BE  DOWNLOADED  
  3608. AND/OR   DESTROYED.    However,   RBBS-PC  has  extensive  safeguards  that  
  3609. systematically  enhance security and privacy.  For example, RBBS-PC has the 
  3610. logic  within  it's  code  to  prohibit  anyone  (including  SYSOP's)  from 
  3611. downloading the RBBS-PC "system" files described in section 6.1.   RBBS can 
  3612. still  be run as  a  wide-open system,   but the SYSOP has many  additional 
  3613. options   to  restrain  access.    These  security options make  RBBS  much 
  3614. more suitable for  private  and business use.
  3615.  
  3616. RBBS-PC's security is controlled by three things:
  3617.  
  3618.      1. the system configuration file (RBBS-PC.DEF),
  3619.      2. the  two external security files for
  3620.            a. passwords (PASSWRDS), and
  3621.            b. file downloads (FILESEC), and
  3622.      3. the users file (USERS) in which each user has an assigned 
  3623.         security level.
  3624.  
  3625. The  users  file is controlled by the SYSOP's  user  maintenance   function 
  3626. 5 as described in section 13.1.  To change a specific user's security level 
  3627. you  select the M>odify option and then the S>ecurity option.   This allows 
  3628. you  to  set  the security level for a user.   Users cannot set  their  own 
  3629. security levels.  Section 12.3 describes how to implement special passwords 
  3630. that  provide special privileges to the groups that  issue  them.   Section 
  3631. 12.4  describes  how specific files,  groups of files,  or even whole  disk 
  3632. volumes can have download security levels associated with them.
  3633.  
  3634. 12.1 RBBS-PC's Security Features
  3635. --------------------------------
  3636. Each  user has an assigned security level.    This is an integer   in   the 
  3637. range  -32,000  to +32,000.   There are then over 65,000 possible  security  
  3638. levels.   Each  command in RBBS also has a security level assigned  to  it.   
  3639. Security assignments are controlled by the SYSOP.   To use a  command,  the  
  3640. caller's  security level must be at least as high as the command's security  
  3641. level.
  3642.  
  3643. The  SYSOP can assign a file or group of files both a security level and  a  
  3644. password.    To  download a file,  a caller must have a security level   at  
  3645. least as high as the file's and be able to give the file's password (if one 
  3646. is  present).    All  users must pass these   security   tests,   including  
  3647. anyone  with  SYSOP privileges.
  3648.  
  3649. Messages  can  now  be  assigned a password by  their  creator.  Then  only  
  3650. persons who are able to give that password can read  or  kill the  message.   
  3651. Messages  with  password protection will show <PROTECTED>   when   scanned.   
  3652. Callers  have  no way of distinguishing messages to   private   individuals  
  3653. and  to  groups  except by how they are addressed.    Persons  with   SYSOP 
  3654. privileges can read all messages.   Section 12.2's description of sending a 
  3655. message  to an AUTHORS SIG as an addressee with the password of  AUTHORONLY 
  3656. shows how to send a message to a special group.
  3657.  
  3658. Security  violations  are  logged  to  the  CALLERS  file.   These  include  
  3659. attempting  to  use functions without sufficient  security  clearance,  and  
  3660.  
  3661.                        Page 61 of 108
  3662. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3663.  
  3664. failure to give required passwords.
  3665.  
  3666. RBBS-PC's default configuration is that of an "open" system.
  3667.  
  3668. RBBS-PC's security system provides the SYSOP with several choices on how to 
  3669. run RBBS-PC. The chief ones are as follows:
  3670.  
  3671. 1.  Change the bulletin board from an open system available to all callers,  
  3672. to   a  pre-registered  system available  only  to  specified  users.    To  
  3673. support  this option,   there is a function in the SYSOP's user maintenance 
  3674. option  5  to ADD users.
  3675.  
  3676. 2.   A SYSOP can set up different "classes" of users by assigning different  
  3677. security levels to different users.   Concurrently the SYSOP would have  to    
  3678. assign  different security levels to different commands.   For example  new  
  3679. callers  might be permitted only to leave a comment,  read  bulletins,  and   
  3680. list  files  that  can be downloaded.  Or there might be a group  of  files   
  3681. assigned a security level that only members of a special interest group can  
  3682. download.
  3683.  
  3684. 3.   The  SYSOP  can  segregate the functions of the  bulletin  board  into  
  3685. different  groups based on a password.   A specific file or group of  files  
  3686. can  be  downloadable  only to those who  knew  the  password.   Similarly,  
  3687. messages  can be made open to everyone knowing the password but  closed  to  
  3688. everyone else.  This way there can be semi-private portions of the bulletin  
  3689. board.
  3690.  
  3691. 12.2 Examples of Uses for RBBS-PC's Security System
  3692. ---------------------------------------------------
  3693. Some  examples of how a SYSOP can tailor RBBS-PC using RBBS-PC's  extensive 
  3694. security features follow.
  3695.  
  3696. SPECIAL INTEREST GROUPS --  A special interest group (SIG) in a users group  
  3697. wishes  to  run  a RBBS for both the general public and  its  own  use.  An  
  3698. example would be an authors SIG for persons interested in publishing books  
  3699. and  articles  or developing commercial software.   A definite  need  would  
  3700. exist to be able to address messages to everyone in the SIG without  making  
  3701. them  open  to  every caller.   The SIG would establish the  convention  to  
  3702. password protect general SIG messages with the password AUTHORONLY,  and to  
  3703. address  them to AUTHORS SIG.
  3704.  
  3705. Another  example  would be a bulletin  board  devoted  to the  exchange  of 
  3706. software.    Allowing  persons to use the message  subsystem   would   only 
  3707. interfere with the primary purpose of  the  bulletin  board.  Therefore the 
  3708. SYSOP  removes  from  the  menu  the functions  for  leaving   and  reading 
  3709. messages.   To prevent a person from using the functions to leave or read a 
  3710. message  (even  though  they are not displayed),   the SYSOP assigns  these 
  3711. functions  a security level higher than a person who logs on normally would 
  3712. be assigned.  
  3713.  
  3714. Another  example of using RBBS-PC's security system would be to set  up  an 
  3715. agreed  upon temporary password such that when a user logs onto the  system 
  3716. they  can issue the password and get longer than normally allowed.   If the 
  3717. time  for  normal users is 30 minutes,  the SYSOP can set up  the   special  
  3718. password  SOFTEXCHANGE,  with  a maximum time on  of  150  minutes  instead 
  3719. of  the  normal  30.    By shifting over to  this  special  password  after  
  3720.  
  3721.                        Page 62 of 108
  3722. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3723.  
  3724. logging in, members can get extra time if they need it. 
  3725.  
  3726. SOFTWARE SUPPORT --  An author of a freeware program offers RBBS support to  
  3727. all  persons  who register their copies and send a  contribution  of,  say,  
  3728. $35  per  copy.    The   registered user can get answers for  problems  and 
  3729. download   free   updates  and  sample  applications.    The  author  wants 
  3730. anyone  to  be  able  to  call just to find out about  the  service.    New 
  3731. callers get a security level  of  2  automatically assigned to them.   This 
  3732. allows them to  use  only the  message subsystem.    The file subsystem  is 
  3733. assigned  a  security level of  7.    Contributors  are added by the  SYSOP 
  3734. with a security level of 7 and a  pre- assigned password.  Except for SYSOP 
  3735. functions,  registered users have free  reign in the RBBS.
  3736.  
  3737. CLIENT   SUPPORT   --  A  SYSOP  on  a  public  RBBS  also  works  as    a  
  3738. management   consultant.   She has several associates who work with her  on 
  3739. projects.   She   needs  to be able to send and receive messages  from  her 
  3740. associates which the  general  public  should  not see.   So they agree  on  
  3741. a  message  password  NOTPUBLIC.  To support her different clients she also 
  3742. needs  to  leave  private  files  for downloading.    To  each  client  she 
  3743. assigns  a  special  downloading   password.    To restrict downloading  to 
  3744. just  that client,   filenames are put  in the file security file with  the 
  3745. appropriate  password.   Only persons with  the password can then  download 
  3746. them.
  3747.  
  3748. PRIVILEGED  ELECTRONIC MAIL --  A company uses RBBS-PC to help support  its  
  3749. regional offices.  Only regional vice-presidents should be able to download  
  3750. certain management reports.   In file security these reports are assigned a  
  3751. high security level of 9, which only managers get.
  3752.  
  3753. 12.3 How to Implement the Password File
  3754. ---------------------------------------
  3755. Section  7.6.9 describes how the SYSOP can designate the name of  the  file 
  3756. containing the privileged group passwords to RBBS-PC.  Since this file is a 
  3757. normal  ASCII  file,  the  SYSOP  can  use  any  text editor to create  and  
  3758. update  the  file it.   Put  the  information for each password on a single 
  3759. line  and separate the fields with  commas.   It is important to note  that 
  3760. EACH  record of both the password or  the file security file  must  contain 
  3761. THREE fields (i.e.  two  commas).   For  the password file, the format is:
  3762.  
  3763. <password>,<security level>,<max time on>.
  3764.  
  3765. Note: Time is in units of minutes.
  3766.  
  3767. Two examples are:
  3768.  
  3769.    EXTEND,5,120
  3770.    ,7,128
  3771.  
  3772. If you are using COPY CON to create this file you "MUST" press F6 followed
  3773. by a Ctrl/Z at the end of the last entry prior to pressing carriage return.
  3774.  
  3775. A  user  who issued the password change function and supplied the  password  
  3776. EXTEND would have their security level temporarily set to 5 and be  granted 
  3777. an elapsed  time of 120 minutes for the current session (the user's elasped 
  3778. time  per day would still be whatever was set in option 15 of  CONFIG).   A 
  3779. user  who  logged  on with a security level of 7  would   automatically  be 
  3780.  
  3781.                        Page 63 of 108
  3782. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3783.  
  3784. granted 128 minutes on the system.
  3785.  
  3786. 12.4  How to Implement the Security for Download Files
  3787. ------------------------------------------------------
  3788. Section  7.6.4 describes how the SYSOP can designate the name of  the  file 
  3789. containing  the passwords and security levels that can be used to  restrict 
  3790. downloads  of  specific files,  volumes,  or files  names  meeting  certain 
  3791. "wildcard"   criteria.    This  file  contains  file  names  with  download 
  3792. restrictions in the format:
  3793.  
  3794. <filename>, <security level>,<password>
  3795.  
  3796. Note:   Each line is a record and ends with carriage-return line-feed.  The  
  3797. only optional field is the password field for a filename.   By leaving  the  
  3798. password  field  empty,  no password is assigned to  a  file.   The  commas  
  3799. between  the fields are necessary.  YOU MUST HAVE TWO COMMAS ON  EACH  LINE  
  3800. even if you do not have a password associated with the file.
  3801.  
  3802. Some examples would be:
  3803.  
  3804.    COMMAND.COM, 10, DOS
  3805.    PAYROLL.DAT, 99, BANKRUPT
  3806.    CALLGIRL.SEX,,ILLEGAL
  3807.    STOCKS,100,
  3808.  
  3809. The  file COMMAND.COM could not be downloaded unless a user had a  security  
  3810. level equal to or greater than 10 AND could supply the password "DOS".  The  
  3811. file PAYROLL.DAT could not be downloaded unless a user had a security level  
  3812. equal to or greater than 99 AND could supply the password "BANKRUPT".   Any  
  3813. user   could  download  the  file CALLGIRL.SEX if  they  could  supply  the  
  3814. password   "ILLEGAL".    Any  user with a security level of 100  or  higher 
  3815. could download  the file STOCKS without supplying any password.
  3816.  
  3817. Additionally  "wild-card"  characters and drive designators can be used  to  
  3818. protect or restrict certain classes of files (by extension, by drive, etc.)  
  3819. from being downloaded.
  3820. Some examples would be:
  3821.  
  3822.    A:*.*,8,
  3823.    E:*.SEC,2,PW1
  3824.    A*.M*,0,GX3
  3825.    XY?X.*,9,3XG
  3826.  
  3827. All files on drive A would require the users to have a security level of  8  
  3828. in  order for a user to download them.   Any user who wanted to download  a  
  3829. file  whose extension was ".SEC" and was found to be on drive E would  have  
  3830. to  not  only  have  a security level of at least 2 but to  also  give  the  
  3831. password  PW1.   The third entry above would require a user who  wanted  to  
  3832. download  any  file on any drive with a prefix that began with "A"  and  an  
  3833. extension that began with "M" to have a security level of at least 0 and to  
  3834. enter the password GX3.   Finally,  the last entry above would require  any  
  3835. user  who  wanted to download any file on any drive whose four-letter  name  
  3836. began with "XY" and whose last letter was "X" with any extension to have  a  
  3837. security level of at least 9 and enter the password 3XG.
  3838.  
  3839.  
  3840.  
  3841.                        Page 64 of 108
  3842. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3843.  
  3844. To  get  exceptions to the general rule,  just put  the  exceptions  first.   
  3845. RBBS-PC's  file security search stops with the first applicable entry  that  
  3846. it  encounters.   For  example, 
  3847.  
  3848. 1.  if you want all files on the B  drive  to require the user to have a 
  3849.     security level of at least 3,
  3850.  
  3851. 2.  except that files on  the B drive with the extension ".SEC" would
  3852.     require the user to have a security level of at least 6,  and,
  3853.  
  3854. 3.  regardless of the disk drive that they were on, any file beginning
  3855.     with "MES" with an extension of ".SEC" would require the user to have
  3856.     a security level of at least 12 
  3857.  
  3858. you would enter the following into the file security file
  3859.  
  3860.    MES*.SEC,12,
  3861.    B:*.SEC,6,
  3862.    B:*.*,3
  3863.  
  3864. Special Note: RBBS  is hard coded so that there are some files that  nobody  
  3865.               can  download -- not even the SYSOP.   These are RBBS-PC.DEF,  
  3866.               users, messages, callers, group password, comments,  the file 
  3867.               security,  and  backup files.   Similarly the   batch   files  
  3868.               that   control  RBBS and let the caller exit to DOS 2 can not 
  3869.               be  downloaded.    The default security file   provided  with 
  3870.               RBBS-PC is empty. 
  3871.  
  3872. 12.5  How to Implement the Security for RBBS-PC Commands
  3873. --------------------------------------------------------
  3874. RBBS-PC allows each command to be assigned it's own security level.  A user 
  3875. who  wishes  to  invoke  an RBBS-PC command must have  at  least  the  same 
  3876. security level as the command.   Let's assume that a SYSOP wants to set  up 
  3877. the following classes of users:
  3878.  
  3879.   Classification of Users                        Security Level
  3880.  
  3881. "Locked Out" Users                                     0
  3882. New Users (first time)                                 1
  3883. Normal Users                                           2
  3884. Users who can "view" a Conference                      3
  3885. Users who can enter Messages                           4
  3886. Users who can download files                           5
  3887. Users who can upload files                             6
  3888. Users who can Join a Conference                        7
  3889. Users who can do some SYSOP commands (Jr. SYSOP's)     8
  3890. Users who can enter a "door"                           9
  3891. Users who can enter all SYSOP commands  (Co-SYSOP's)  10
  3892.  
  3893.  
  3894.  
  3895.  
  3896.  
  3897.  
  3898.  
  3899.  
  3900.  
  3901.                        Page 65 of 108
  3902. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3903.  
  3904. The  following  table  illustrates  one method of  assigning  each  RBBS-PC 
  3905. command it's own security level:
  3906.  
  3907.          Subsystem/Command                Security Level
  3908.                                         Assigned to Command
  3909.  
  3910.           Messages Subsystem
  3911.              B>ulletins.......................... 1
  3912.              C>omments........................... 1
  3913.              D>oor subsystem..................... 9
  3914.              E>enter message..................... 4
  3915.              F>iles system....................... 1
  3916.              G>oodbye............................ 0
  3917.              H>elp............................... 1
  3918.              I>nitial welcome.................... 1
  3919.              J>oin a conference.................. 7
  3920.              K>ill messages...................... 4
  3921.              L>ines per page..................... 1
  3922.              O>perator page...................... 1
  3923.              P>ersonal mail...................... 2
  3924.              Q>uick scan of messages............. 1
  3925.              R>ead messages...................... 2
  3926.              S>can messages...................... 1
  3927.              U>tilities (more)................... 1
  3928.              V>iew a conference.................. 3
  3929.              W>ho's on other nodes................3
  3930.              X>Expert on/off..................... 1
  3931.              ?>Functions......................... 1
  3932.  
  3933.           Utilities Subsystem
  3934.              B>aud rate.......................... 1
  3935.              C>ase change........................ 1
  3936.              F>ile transfer protocol............. 1
  3937.              G>raphics........................... 1
  3938.              H>elp............................... 1
  3939.              L>ine feeds......................... 1
  3940.              M>sg Margin......................... 1
  3941.              N>ulls.............................. 1
  3942.              P>assword........................... 2
  3943.              Q>uit to messages subsystem......... 0
  3944.              R>eview preferences................. 0
  3945.              S>tatistics......................... 1
  3946.              T>ime............................... 1
  3947.              U>serlog............................ 2
  3948.              X>Expert mode on/off................ 1
  3949.              !>Prompt Sound...................... 1
  3950.  
  3951.  
  3952.  
  3953.  
  3954.  
  3955.  
  3956.  
  3957.  
  3958.  
  3959.  
  3960.  
  3961.                        Page 66 of 108
  3962. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  3963.  
  3964.          Subsystem/Command                Security Level
  3965.                                         Assigned to Command
  3966.  
  3967.           Files Subsystem
  3968.              D>ownload........................... 5
  3969.              G>oodbye............................ 0
  3970.              H>elp............................... 1
  3971.              L>ist file directories.............. 7
  3972.              N>ew files.......................... 6
  3973.              Q>uit to messages subsystem......... 1
  3974.              S>earch directories for string ..... 1 
  3975.              U>pload a file...................... 6
  3976.              X>Expert mode on/off................ 1
  3977.              ?>file transfer information......... 1
  3978.  
  3979.           SYSOP Subsystem
  3980.              1>List comments..................... 8
  3981.              2>List callers log..................10
  3982.              3>Recover a Message................. 8
  3983.              4>Erase comments.................... 9
  3984.              5>USERS maintenance.................10
  3985.              6>Toggle page bell.................. 8
  3986.              7>Exit to DOS 2.x or above.......... 9
  3987.  
  3988. 12.6  Beware of the "Trojan Horse!"
  3989. -----------------------------------
  3990. Despite RBBS-PC's security always remember that you should always assume:
  3991.  
  3992.        "EVERY FILE ON THE PC RUNNING RBBS-PC CAN
  3993.        BE DOWNLOADED, MODIFIED, AND/OR DESTROYED!"
  3994.  
  3995. RBBS-PC's security system appears to be so fool-proof that some individuals 
  3996. have  resorted  to  uploading programs that appear to  do  one  thing,  but 
  3997. actually  do something else.   These "trojan horse" programs search all the 
  3998. disks that are connected to the PC that the program is running on for  such 
  3999. RBBS files as RBBS-PC.DEF or USERS.  The program then copies these files to 
  4000. an  innocuously named file that can be downloaded later when the person who 
  4001. uploaded  it logs onto the system again.   Since RBBS-PC.DEF  contains  the 
  4002. pseudonym  that the SYSOP can use to logon on remotely as the  SYSOP,  once 
  4003. the  user downloads a copy of it the user can then log on as the SYSOP  and 
  4004. do  just  about  anything including exiting to DOS and formatting  all  the 
  4005. disks on the system.   Similarly, the USERS file contains passwords and the 
  4006. security  levels  of everyone on your RBBS -- some of whom may  have  SYSOP 
  4007. privileges.  
  4008.  
  4009. You  can protect yourself against anyone logging on as you,  the SYSOP,  by 
  4010. not  allowing  anyone  to logon as the SYSOP remotely.   To  do  this  read 
  4011. section  7.1.1  regarding parameters 3 and 4.   You  can  protect  yourself 
  4012. against  unauthorized  access of the USERS file by simply not allowing  any 
  4013. user to have SYSOP privileges.
  4014.  
  4015. Of course there is the "trojan horse" program that doesn't even bother with 
  4016. the above, but simply destroys all the disk files on all the disks that are 
  4017. connected  to  the  PC that is running the  program.   Read  section  16.0, 
  4018. Uploaded  File  Tips,  regarding how you can protect yourself against  such 
  4019. programs.
  4020.  
  4021.                        Page 67 of 108
  4022. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4023.  
  4024. 13.0 SYSOP FUNCTIONS
  4025. -------------------
  4026. The SYSOP functions are not available to the general user, and it should be  
  4027. noted  that  the  SYSOP should not use some of the  user  functions  either  
  4028. because  the code will not work correctly if called from the main  console,  
  4029. or  the  function  is  not  for use by  the  SYSOP.    Such  functions  are  
  4030. the  <O>perator,   <N>ewbaud,   <PW>  password,  and  file  upload/download  
  4031. using   XMODEM.    File  download using ASCII can be used to  "type"  files  
  4032. available  for download so they scroll across your screen.
  4033.  
  4034. To  enter  the  SYSOP mode press the ESC key locally or enter  the  special  
  4035. 'pass'  and  'word'  first  and last name  from  a  remote  terminal.
  4036.  
  4037. 13.1 SYSOP Commands Within RBBS-PC
  4038. ----------------------------------
  4039. The following operations can then be performed by entering a number only at  
  4040. the command prompt:
  4041.  
  4042. 1  - Type comments file.   The contents of the COMMENTS file is  displayed.   
  4043. This  file can also be inspected using a TYPE command from DOS.   It  is  a  
  4044. ASCII sequential text file.
  4045.  
  4046. 2 - Type CALLERS file.   A log is maintained of all persons who have called  
  4047. the  system.   This function will list the file showing the users name  and  
  4048. the  date  and  time  signed  on as well as the names  of  the  files  they 
  4049. upload/downloads  along with any security violation or errors  encountered.  
  4050. This  is a random access file of 64-byte records.
  4051.  
  4052. 3 - Resurrect a message.  This function will return a message that has been  
  4053. killed   to  an  active state.    If message file has been  "packed",   the  
  4054. killed  messages are no longer recoverable.   The function will ask for the 
  4055. message  number of the message to be recovered.
  4056.  
  4057. 4 - Erase the COMMENTS file.  This function will erase the comments file by  
  4058. killing the file.   Since the file is opened "APPEND," a new comments  file 
  4059. will be created the next time a user leaves a comment.           
  4060.  
  4061. 5 - USERS file maintenance.   The users file contains entries for each user  
  4062. registered  with the system.   This function permits the SYSOP to list  the  
  4063. file  on the display,  print the file on the printer (LPT1:) or to  perform  
  4064. limited editing of the user file records.
  4065.  
  4066. In <M>odify mode the following subfunctions are available:
  4067.     A - Add a user to the USERS file.
  4068.     M - Return to the <M>ain menu or function prompt.
  4069.     P - Toggle the printer flag to print entries on the printer.
  4070.     N - New password.  Permits the SYSOP to change the
  4071.         password for the user.
  4072.     F - Find User.  Permits the SYSOP to locate a user by
  4073.         entering the users name.
  4074.     S - Set the security level of the user.  This can be
  4075.         used to lockout or grant special privileges to the user.
  4076.         In <M>odify mode a record will be displayed followed by a
  4077.         subfunction prompt for action.  To get to a specific
  4078.         record the record number can be entered at the prompt
  4079.         and if valid that record will be displayed.  If the
  4080.  
  4081.                        Page 68 of 108
  4082. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4083.  
  4084.         record number is invalid or an empty c/r is entered then
  4085.         the next record in the file will be displayed.
  4086.  
  4087. 6  - Toggles the operator page bell on/off and overrides the "office hours" 
  4088. specified in the RBBS-PC.DEF file.
  4089.  
  4090. 7   - If   the  SYSOP has logged on remotely and is running  RBBS-PC  under  
  4091. DOS  2.0  or  greater,   this  function will dynamically setup a batch file 
  4092. to  assign  the  SYSOPS terminal as the main console.   It then returns  to 
  4093. DOS and if
  4094.         
  4095.        a.  RBBS-PC was invoked via a batch file, and if
  4096.  
  4097.        b.  that batch file checks for the batch file which RBBS-PC
  4098.            dynamically builds for option 7, and if
  4099.  
  4100.        c.  the batch file that invokes RBBS-PC executes the batch file
  4101.            that  RBBS-PC dynamically builds for option 7, and if
  4102.  
  4103.        d.  the program EXITRBBS.EXE exists on the same drive or in
  4104.            the same DOS sub-directory as RBBS-PC.EXE.
  4105.  
  4106. The  the SYSOP will then see the DOS prompt at the remote terminal and  can 
  4107. execute  whatever DOS commands or programs the CTTY command  support.   DOS 
  4108. will look for COMMAND.COM to be present on the disk drive you specified  in 
  4109. option 85.  Option 7, unlike "doors," loads in a copy of COMMAND.COM to run 
  4110. under the copy that was running RBBS-PC.   Also be sure to read section  14 
  4111. and  make  sure  that you THOROUGHLY understands the limitations  that  DOS 
  4112. places on you when this option is invoked.
  4113.  
  4114. Two   areas  of  caution are advised when using option  7  under  DOS   2.0 
  4115. or above.    First,   each  SYSOP  should  test what can be done  remotely.  
  4116. Software  that reads and writes directly to the video BIOS and does   other  
  4117. things  that  bypass  the  standard  input and output of DOS  simply  won't  
  4118. function   correctly.    Second,   you should be aware that  you are in DOS 
  4119. and  can return to RBBS-PC only by issuing the EXIT  command.    This  will 
  4120. return  to  the  batch file that was built dynamically by  RBBS-PC.    This 
  4121. file   will   then   continue executing  and is designed  to  reassign  the 
  4122. keyboard   as   the   console and then  re-invoke  RBBS-PC.    If  you  get 
  4123. disconnected while in DOS,   your  system will be locked up.    The console 
  4124. will  be assigned to your  communication  port  and your Hayes  modem  will 
  4125. have  dropped the  line   and  will have been set not to auto-answer.   The 
  4126. only way to re-boot the  system  is a manual power off/on sequence.
  4127.  
  4128. 13.2 SYSOP's Use of Function Keys
  4129. ---------------------------------
  4130. The   following  function  keys  (ten keys on the left  side  of a standard 
  4131. IBM  keyboard)   are  designed  to  give the SYSOP special  local  controls 
  4132. that   can   be  actuated  without entering the SYSOP mode (using  the  ESC 
  4133. entry key).   The current status of the function keys F3, F4, F6 and F7 are 
  4134. displayed on line 25.
  4135.  
  4136. F1 - Return to DOS.  This will terminate a session if a caller is on-line.
  4137.  
  4138. F2 - SHELL to DOS.  RBBS-PC remains resident but suspended in memory, the
  4139. user (if any) remains on-line and the local SYSOP is in DOS until the  EXIT 
  4140.  
  4141.                        Page 69 of 108
  4142. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4143.  
  4144. command is issued (returning to within RBBS-PC just prior to having pressed 
  4145. the F2 key).  The users session is not terminated -- only suspended.
  4146.  
  4147. F3 - Printer toggle on/off.  This changes the printer on-line status.  When  
  4148. on-line    the    printer    will   print  each caller's   name    and  the   
  4149. file    names   uploaded/downloaded.    It   will   also  print  all  error 
  4150. messages   except  the  ERROR 68 used to check that a  file  exists.   This 
  4151. function should match  the  condition  of  the printer.   If the printer is 
  4152. going  to be  left  off,   the  PRINTER toggle should be set to off.   When 
  4153. the printer toggle is on "LPT," will be displayed in positions 8-11 of line 
  4154. 25.
  4155.  
  4156. F4   - Operator page toggle.    This changes the status of "operator annoy" 
  4157. (i.e.  allows  the  SYSOP to be pageable) and  records  the change  in  the 
  4158. "node" record associated with the copy of RBBS-PC associated with  function 
  4159. key  4.    This  is  set   by  the  CONFIG  program  parameter  #  7  which 
  4160. establishes  the  SYSOP's office hours.   This can be used to override  and 
  4161. extend the "office hours" set up by CONFIG.BAS.   When the "operator annoy" 
  4162. toggle is on, "ANY" will be displayed in positions 5-7 of line 25.
  4163.  
  4164. F5 - Forces RBBS-PC to tell the modem to answer the phone.
  4165.  
  4166. F6  - SYSOP available.   This changes the status of operator available  and  
  4167. records   the change in the "node" record associated with the copy of RBBS-
  4168. PC associated with  function key 6.   This is useful if during your "office 
  4169. hours"  you  temporarily  don't  wish to  be  disturbed.   When  the  sysop 
  4170. available  toggle is on,  "AVL" will be displayed in positions 1-3 of  line 
  4171. 25.
  4172.  
  4173. F7  - SYSOP gets control of the system after current user logs  off.   When 
  4174. the "SYSON next" toggle is on,  "SYS" will be displayed in positions  13-15 
  4175. of line 25.
  4176.  
  4177. F8  - Allows the SYSOP to grant an on-line user temporary SYSOP privileges.   
  4178. This is a toggle on/off switch.
  4179.  
  4180.  
  4181.  
  4182.  
  4183.  
  4184.  
  4185.  
  4186.  
  4187.  
  4188.  
  4189.  
  4190.  
  4191.  
  4192.  
  4193.  
  4194.  
  4195.  
  4196.  
  4197.  
  4198.  
  4199.  
  4200.  
  4201.                        Page 70 of 108
  4202. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4203.  
  4204. F9 - SNOOP toggle.  This changes the SNOOP from the default value the first  
  4205. time  it  is pressed and toggles it on/off thereafter.  "SNOOP off"  clears  
  4206. the  screen  and  turns the cursor off.   It also keeps the download  beeps  
  4207. from  sounding.    The  SNOOP should be left off for normal use to keep the 
  4208. system  startup screen from "burning into" the monitor.    If the SNOOP  is 
  4209. left  on,  the  monitor should be physically turned off except when you are  
  4210. observing   the  RBBS in action.   Leaving the monitor off will not  affect 
  4211. performance of  the RBBS.
  4212.  
  4213. F10  - This is the forced chat switch.   It announces your forced chat  and  
  4214. who you are before turning the keyboard over to you and the  caller.    The 
  4215. ESC  key is used to exit Forced chat mode or to answer an "O>perator  page" 
  4216. request.  The F10 key will not function until a user logging on has reached 
  4217. the Main Menu.
  4218.  
  4219. The SYSOP can also enter commands on the command prompt line while a caller  
  4220. is  on-line.   The command entered will cause the system to respond just as  
  4221. it would if the caller had entered the command.   This should be used  with 
  4222. caution because it could confuse a new system user -- users are often timid  
  4223. enough  without  knowing that big brother is actually watching  them!   Let 
  4224. callers  page you and then tell them that you can assist with  commands  if 
  4225. the get  into trouble.
  4226.  
  4227.  
  4228.  
  4229.  
  4230.  
  4231.  
  4232.  
  4233.  
  4234.  
  4235.  
  4236.  
  4237.  
  4238.  
  4239.  
  4240.  
  4241.  
  4242.  
  4243.  
  4244.  
  4245.  
  4246.  
  4247.  
  4248.  
  4249.  
  4250.  
  4251.  
  4252.  
  4253.  
  4254.  
  4255.  
  4256.  
  4257.  
  4258.  
  4259.  
  4260.  
  4261.                        Page 71 of 108
  4262. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4263.  
  4264. 14.0 DOS LIMITATIONS ON RUNNING PROGRAMS REMOTELY
  4265. -------------------------------------------------
  4266. 14.1 How to Get DOS to Monitor Carrier Detect
  4267. ---------------------------------------------
  4268. When accessing your PC via a communications port, the carrier detect signal 
  4269. tells the PC that you are on-line.  DOS's major limitation is that there is 
  4270. no  way  to  tell  DOS to monitor carrier detect  automatically   when  the 
  4271. standard input and output is transferred to a communication port (i.e.  via 
  4272. the  CTTY command).    RBBS-PC makes sure that the carrier is  not  dropped 
  4273. when  a user exits to DOS either via the "DOORS" option or using the remote 
  4274. SYSOP function 8.   However, it is the  SYSOP's  responsibility  to  insure  
  4275. that   whatever  programs are invoked after leaving RBBS-PC   perform   all  
  4276. the  necessary  functions  to maintain the communications session and, when 
  4277. exiting to return to RBBS-PC, that the carrier  is  "NOT"  dropped.
  4278.  
  4279. Most  application programs (i.e.  databases,  etc.) are not designed to  be 
  4280. controlled  by  users  accessing them from  a  communications  port.   This 
  4281. problem is solved when a function is invoked that:
  4282.  
  4283.   1.   Checks  to  see if the standard input and output console  have  been 
  4284. assigned to an auxiliary console such as a communication port.
  4285.  
  4286.   2.  If condition 1 is true, checks to see if the carrier detect signal is 
  4287. lost  by  intercepting  each  interrupt from  the  communication  port  the 
  4288. auxiliary console has been assigned to.
  4289.  
  4290.   3.  If BOTH conditions 1 and 2 are true, this function would cause DOS to 
  4291. switch back to the standard screen and keyboard for its operations AND then 
  4292. continue  processing  whatever batch file that had been executing  (if  one 
  4293. was).
  4294.  
  4295. Such a function (or device driver) would provide a "fail safe" feature that 
  4296. would  allow users to exit  RBBS-PC  to  use  whatever  other software  the 
  4297. SYSOP  chose to make  available  (i.e.   relational databases  for  complex 
  4298. inquiries   -- bibliographic,    sports,    games,    etc.).    For   those 
  4299. anticipating  using  RBBS-PC's  "doors" or exiting to DOS when  you  are  a 
  4300. remote SYSOP,  you are strongly encouraged to consider using the "watchdog" 
  4301. utility  program  available on many bulletin board systems under such  file 
  4302. names  as  WATCHDOG.COM,   WATCHDOG.ASM,  WATCHDOG.DOC,  WATCHDOG.EXE  that 
  4303. monitors the communication port for you and reboots your system if  carrier 
  4304. drops.   If  you  don't use a program like WATCHDOG and accidently hang  up 
  4305. while  in a "door" or in DOS,  you system will remain "hung" until you  can 
  4306. manually reboot it.
  4307.  
  4308. If  you  aren't technically inclined and want to use  RBBS-PC  "doors",   I 
  4309. suggest   you  consider   using   MultiLink   from   The   Software   Link,  
  4310. Incorporated  at (404)  998-0700.   While  MultiLink  costs  about $500 and 
  4311. neither RBBS-PC nor CPCUG have any connection with it,   it does provide  a 
  4312. mechanism  for  overcoming  DOS's inability to have programs  invoked  from 
  4313. remote users (release 2.0.6 or higher of MultiLink is required).   If  RBBS 
  4314. detects  that  MultiLink is present when a user exits to DOS  via  "doors", 
  4315. RBBS-PC   automatically passes control of the communications port that  the 
  4316. user  is on to MultiLink so that MultiLink can do the carrier monitoring on 
  4317. behalf of the application.
  4318.  
  4319.  
  4320.  
  4321.                        Page 72 of 108
  4322. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4323.  
  4324. 14.2  How to Redirect Graphic Displays to Remote Users
  4325. ------------------------------------------------------
  4326. Programs that utilize the PC's built in video memory (such as the IBM BASIC 
  4327. interpreter or WordStar when it writes to the 25th line) need to have  such 
  4328. I/O redirected in a special way to a remote user's terminal.  Additionally, 
  4329. if  the I/O is redirected to the communications port,  the terminal on  the 
  4330. other  end  must have a "cursor" that can be sent the  appropriate  command 
  4331. sequence  to  move  it around on the remote user's terminal  as  necessary. 
  4332. Without this capability, programs  made  available  through "doors" must be 
  4333. line-at-a-time  programs.   This  of  course  excludes   programs  such  as 
  4334. WordStar, Lotus/123 etc.
  4335.  
  4336. If  you  aren't  technically inclined and want to use RBBS-PC  "doors"  for 
  4337. applications that write directly to the PC's video hardware,  I suggest you 
  4338. consider   using   MultiLink  (see section  14.1).   MultiLink  provides  a 
  4339. mechanism  for  overcoming DOS's inability to redirect graphics  to  remote 
  4340. users.   If RBBS detects that MultiLink is present when a user exits to DOS 
  4341. via  "doors",  RBBS-PC  automatically passes control of the  communications 
  4342. port to MultiLink and notifies MultiLink of the kind of MultiLink-supported 
  4343. terminal  to redirect the application's graphics to (presumably one with  a 
  4344. controllable cursor).
  4345.  
  4346.  
  4347.  
  4348.  
  4349.  
  4350.  
  4351.  
  4352.  
  4353.  
  4354.  
  4355.  
  4356.  
  4357.  
  4358.  
  4359.  
  4360.  
  4361.  
  4362.  
  4363.  
  4364.  
  4365.  
  4366.  
  4367.  
  4368.  
  4369.  
  4370.  
  4371.  
  4372.  
  4373.  
  4374.  
  4375.  
  4376.  
  4377.  
  4378.  
  4379.  
  4380.  
  4381.                        Page 73 of 108
  4382. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4383.  
  4384. 15.0  CONFERENCING WITH RBBS-PC
  4385. -------------------------------
  4386. RBBS-PC is intended to be an open system.   The "conference" concept is one 
  4387. that  allows  either  anyone  who  can  leave  messages  (i.e.  a  "public" 
  4388. conference) or a pre-registered set of users (i.e.  a "private" conference) 
  4389. to  engage in a specialized dialogue.   To make a  "conference"  successful 
  4390. several guidelines should be followed rather rigorously:
  4391.  
  4392. 1.   Establish  a  "conference  chairman" (i.e.  a  SIGOP)  to  manage  the 
  4393. conference.   The  SIGOP's job is to add new users,  delete old ones,  make 
  4394. sure that the subject and/or the agenda of the conference is adhered to  by 
  4395. killing messages that are inappropriate.  
  4396.  
  4397. 2.  Establish an "agenda" or list of subject areas for the conference.  One 
  4398. of  these  should be about new subject areas.   These areas should be  VERY 
  4399. narrow in scope.  The essence of any good conference is keeping it focused.  
  4400. Everyone  has been in at least one meeting/conference that was a  waste  of 
  4401. time  because  whoever was running the meeting/conference did not keep  the 
  4402. dialogue centered on the subject or agenda. 
  4403.  
  4404. The  SYSOP  sets up a conference using CONFIG.BAS to pre-format up  to  two 
  4405. files  -- one for the messages to be associated with the conference and one 
  4406. for  the  users to be associated with a conference (if it  is  a  "private" 
  4407. conference).   The file name for a "conference" can be any seven characters 
  4408. that  are valid for a file name.   The eighth character must be a "M"  (for 
  4409. the  messages file associated the conference) or a "U" (for the users  file 
  4410. associated with the conference).   The SYSOP can then enter the  conference 
  4411. member's  names in the conference USERS file by using the SYSOP function 5.  
  4412. The  SYSOP  can  "join" any conference and need not be  in  any  particular 
  4413. conference's USERS file.
  4414.  
  4415. To set up a conference chairman,  the SYSOP need only
  4416.  
  4417.     1.  "Join" the conference,
  4418.     2.  Use SYSOP function 5 to enter the name of the user who is to
  4419.         be the conference chairperson into the conference's USERS file.
  4420.     3.  Set that user's security level in the conference's USERS file
  4421.         to a security level that can issue the SYSOP function 5.  This 
  4422.         will allow the conference chairman to add users.
  4423.  
  4424. Remember  that   users  can  join a "private" conference  only  if  already 
  4425. registered in that conference's USERS file.  Any registered user can join a 
  4426. "public"  conference.   When  someone issues the J>oin command  to  join  a 
  4427. conference,  their standard security level is temporarily superseded by the 
  4428. security  level  associated with their user name within  that  conference's 
  4429. USERS file if it is a "private" conference.
  4430.  
  4431. For  example,  a  normal user might be given the security required  to  add 
  4432. users  to the conference USERS file for a particular conference since  they 
  4433. are  the conference chairman.   When a user joins the conference  of  which 
  4434. they are chairman,  their normal security is bumped up so that they can add 
  4435. users to the USERS file of that particular "private" conference.   When the 
  4436. same  user  exits  that conference,  their security level  is  returned  to 
  4437. normal.   If they should subsequently join another conference in which they 
  4438. are  not chairman,  they would be unable to add users to that  conference's 
  4439. USERS  file.  Other  than  a conference chairman,  none of  the  conference 
  4440.  
  4441.                        Page 74 of 108
  4442. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4443.  
  4444. members should be given any higher security than they otherwise enjoy as  a 
  4445. regular RBBS-PC users.
  4446.  
  4447. There are no limits on the number of conferences within RBBS-PC.   Here are 
  4448. some examples of some conference names:
  4449.  
  4450. Conference Name     Name of Message File      Name of Users File for that
  4451.                     for that Conference       Conference (if "private")
  4452.  
  4453.   FORSALE               FORSALEM.DEF           FORSALEU.DEF
  4454.   GAMES                 GAMESM.DEF             GAMESU.DEF
  4455.   FINANCE               FINANCEM.DEF           FINANCEU.DEF
  4456.   SYSOPS                SYSOPSM.DEF            SYSOPSU.DEF
  4457.   CLONES                CLONESM.DEF            CLONESU.DEF
  4458.   RELIGON               RELIGONM.DEF           RELIGONU.DEF
  4459.   PHILOSP               PHILOSPM.DEF           PHILOSPU.DEF
  4460.   BBS                   BBSM.DEF               BBSU.DEF
  4461.  
  4462. If a continuity of dialogue is to be achieved,  it is advisable to keep the 
  4463. conference  "focused" -- either by keeping the number of conference members 
  4464. limited  to  thirty persons or less or by keeping the subject  matter  very 
  4465. narrow (i.e.  the IBM PC's 30MB disk size limitation).  Another interesting 
  4466. thing  about  "private" conferences as implemented within RBBS-PC  is  that 
  4467. they are not "public" and, therefore, are even more protected by the first, 
  4468. fourth, and fifth amendments.
  4469.  
  4470.  
  4471.  
  4472.  
  4473.  
  4474.  
  4475.  
  4476.  
  4477.  
  4478.  
  4479.  
  4480.  
  4481.  
  4482.  
  4483.  
  4484.  
  4485.  
  4486.  
  4487.  
  4488.  
  4489.  
  4490.  
  4491.  
  4492.  
  4493.  
  4494.  
  4495.  
  4496.  
  4497.  
  4498.  
  4499.  
  4500.  
  4501.                        Page 75 of 108
  4502. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4503.  
  4504. 16.0 UPLOADED FILE TIPS
  4505. -----------------------
  4506. If someone uploads a BASIC file to you, and it will not list on your screen  
  4507. using the DOS TYPE command,  you should go into BASIC,  load the file, list  
  4508. it,   then resave it using the same name.  If when you try to load the file 
  4509. into  the  BASIC interpreter you get a `Direct Statement In   File'   error 
  4510. printed  on  the screen,  the BASIC file has a line without a line  number.  
  4511. This will not interfere  with  the  resaving of the file unless the  direct 
  4512. statement  is at the beginning of the  file;   if the file lists  properly, 
  4513. then  the direct statement is at the end of the  file.    If the file  does 
  4514. not  list properly,  then the direct statement is at  the beginning of  the 
  4515. file and has to be removed using a text editor (EDLIN)  before the  program 
  4516. can be loaded and run.
  4517.  
  4518. Do  not attempt to save a BASIC file after getting the `Direct Statement In  
  4519. File'  error  during loading without listing the program  first;  you  will  
  4520. destroy the file otherwise.  If you wish to load an uploaded file (a  BASIC  
  4521. program or any other text file) into a text editor to change the content of  
  4522. the  file,   you  will first have tofirst add line feeds to the end of each  
  4523. line  (after  each  carriage return).
  4524.  
  4525. Finally,   every  SYSOP should assume that any uploaded file him that   can  
  4526. be executed (i.e.  .BAS,  .COM,  .EXE) has the capability of destroying all  
  4527. the  files available to the PC it is executed on.  This may be because  the  
  4528. documentation  is in error,  the program was executed incorrectly,  or  the  
  4529. program   was designed to be malicious.   It behooves every SYSOP  to  know 
  4530. what   every  uploaded file does in order to protect not only  the  RBBS-PC 
  4531. system, but its users.
  4532.  
  4533.  
  4534.  
  4535.  
  4536.  
  4537.  
  4538.  
  4539.  
  4540.  
  4541.  
  4542.  
  4543.  
  4544.  
  4545.  
  4546.  
  4547.  
  4548.  
  4549.  
  4550.  
  4551.  
  4552.  
  4553.  
  4554.  
  4555.  
  4556.  
  4557.  
  4558.  
  4559.  
  4560.  
  4561.                        Page 76 of 108
  4562. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4563.  
  4564. 17.0 DUE WARNING AND SYSOP'S LEGAL LIABILITY
  4565. --------------------------------------------
  4566. While no definitive case-law or legislation exists defining the liabilities 
  4567. of System Operators, every SYSOP should assume that they are as responsible 
  4568. for  their own actions when running an electronic bulletin board system  as 
  4569. they  would  be for any other action as a citizen of the United States  who 
  4570. chooses  to exercise their right to freedom of speech.   One of the  unique 
  4571. features  of RBBS-PC is that users have to OVERTLY register  themselves  -- 
  4572. even  when  the RBBS-PC is "open" to the general public.   This gives  each 
  4573. SYSOP the opportunity to give every user "due notice" and require each user 
  4574. to proactively acknowledge such notice.   For some SYSOP's it is simply the 
  4575. rules of their board.   For me,  the following is what I use as the text in 
  4576. my NEWUSER file:
  4577.  
  4578. "Welcome   to   the  world of RBBS-PC!    Before  continuing   you   should 
  4579. understand your responsibilities as a RBBS-PC user.  Specifically they are:
  4580.  
  4581. 1.    Actively  encourage  and  promote the free  exchange  and  discussion  
  4582. of  information,   ideas  and  opinions,  except  when  the  content  would 
  4583. compromise the national security of the United States;  violate proprietary 
  4584. rights,  personal  privacy,   or  applicable  state/federal/local laws  and  
  4585. regulations  affecting telecommunications; or constitute a crime or libel.
  4586.  
  4587. 2.    Use  your  real  name and fully  disclose  any  personal,  financial,  
  4588. or commercial interest when evaluation any specific product or service.
  4589.  
  4590. 3.    Adhere  to  these rules and notify me immediately when you   discover  
  4591. any violations of the rules.
  4592.  
  4593. FURTHER  every  user explicitly acknowledges that all information  obtained 
  4594. from this RBBS-PC is provided "as is" without warranty of any kind,  either 
  4595. expressed or implied,  including, but not limited to the implied warranties 
  4596. of merchantability and fitness for a particular purpose and that the entire 
  4597. risk  of acting on information obtained from this  RBBS-PC,  including  the 
  4598. entire costs of all necessary remedies,  is with those who choose to act on 
  4599. such  information  and not the operator of this RBBS-PC.   Register if  you 
  4600. agree."
  4601.  
  4602. This  won't  protect you from prosecution if you allow your RBBS-PC  to  be 
  4603. used for criminal activities.  However, it does serve to cause each user to 
  4604. voluntarily  and OVERTLY accept my "rules" and allows me to sleep better at 
  4605. night  knowing that I have given "due notice."  My own personal  philosophy 
  4606. is  to  actively  pursue  and prosecute ANY user on my  board  who  I  find 
  4607. engaging  in  what  appears  to  be  a  violation  of  the  above   notice.  
  4608. Essentially, if you are going to run an RBBS-PC open to the general publice 
  4609. as  I do,  your board's reputation and standards must be able to  withstand 
  4610. public scrunity.  If you don't feel you can maintain such standards, either 
  4611. don't run a RBBS-PC or run a very, very private one (and be sure to put all 
  4612. your assets in the wife's and kid's names).
  4613.  
  4614. Since I'm not a lawyer, if you want a legal opnion on your liabilities as a 
  4615. SYSOP  your only source of legal advice should be an attorney  licensed  to 
  4616. practice  in your state.   Just remember it may not be the best advice  and 
  4617. that  the  legal  liabilities regarding the  operation  of  bulletin  board 
  4618. systems is unclear.
  4619.  
  4620.  
  4621.                        Page 77 of 108
  4622. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4623.  
  4624. 18.0 COMPILING AND LINKING RBBS-PC
  4625. ----------------------------------
  4626. RBBS-PC CPC13-1A's source is distributed along with the executable  program 
  4627. RBBS-PC.EXE.   It is NOT necessary for anyone running  RBBS-PC to recompile 
  4628. or re-link RBBS-PC in order to utilize RBBS-PC.   However,  some users  may 
  4629. wish  to modify the source and recompile it.   This section is intended for 
  4630. those hardy few who choose to do so.   Remember only what is distributed is 
  4631. supported -- anything else is strictly yours to debug!
  4632.  
  4633. 18.1 Compiling CONFIG.BAS and RBBS-PC.BAS
  4634. -----------------------------------------
  4635. Because  of the size of the CONFIG.BAS (version 1.9) the BASIC  compiler  
  4636. command should be:
  4637.  
  4638.      BASCOM  CONFIG.BAS,, /E/O;
  4639.  
  4640. The output will be CONFIG.OBJ with a size of about 149,746 bytes.
  4641.  
  4642. Similarly,  because   of  the size of the RBBS-PC.BAS (version  CPC13)  the 
  4643. BASIC  compiler  command should be:
  4644.  
  4645.      BASCOM  RBBS-PC.BAS,, /E/C:4096/O;
  4646.  
  4647. The output will be RBBS-PC.OBJ with a size of about 172,165 bytes.
  4648.  
  4649. 18.2 LINKing CONFIG 
  4650. -------------------
  4651. CONFIG.OBJ can be LINKed to produce CONFIG.EXE with the command
  4652.  
  4653.      LINK CONFIG+xxxCOM,CONFIG.EXE,,C:;
  4654.  
  4655. assuming  that all the required files are on the C drive.   The output will 
  4656. be CONFIG.EXE with a size of about 126,306 bytes (or about 124K).
  4657.  
  4658. NOTE:  xxxCOM  must be replaced with GWCOM if using the QuickBASIC compiler 
  4659.        and IBMCOM if using the IBM Version 2.0 compiler.
  4660.  
  4661. 18.3 LINKing RBBS-PC
  4662. --------------------
  4663. RBBS-PC.OBJ can be LINKed to produce RBBS-PC.EXE with the LINKer 
  4664. command (all on one line):
  4665.  
  4666.      LINK RBBS-PC+xxxCOM+RBBSMNP+ANSI+XMODEM+RBBSML+BDRIVE2+PC-NET,
  4667.           RBBS-PC.EXE,RBBS-PC.MAP,C:MNP.LIB/MAP/LINE
  4668.  
  4669. NOTE:  xxxCOM  must be replaced with GWCOM if using the QuickBASIC compiler 
  4670.        and IBMCOM if using the IBM Version 2.0 compiler.
  4671.  
  4672. The  output  of the above command will be RBBS-PC.EXE with a size of  about 
  4673. 154,986 bytes (or about  152K).
  4674.  
  4675. MNP  file transfer protocol is NOT required to be included in RBBS-PC  (see 
  4676. CONFIG's option 31).   Therefore,  RBBS-PC can be LINKed using the standard 
  4677. LINKer   supplied  with  the  Microsoft  QuickBASIC  compiler  and  without 
  4678. including  either  RBBSMNP.OBJ or the MNP library.   To do this  enter  the 
  4679. command:
  4680.  
  4681.                        Page 78 of 108
  4682. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4683.  
  4684.  
  4685.      LINK RBBS-PC+xxxCOM+ANSI+XMODEM+RBBSML+BDRIVE2+PC-NET,
  4686.           RBBS-PC.EXE,RBBS-PC.MAP,/MAP/LINE
  4687.  
  4688. NOTE:  xxxCOM  must be replaced with GWCOM if using the QuickBASIC compiler 
  4689.        and IBMCOM if using the IBM Version 2.0 compiler.
  4690.  
  4691. Both  of the above LINK commands assume that all the necessary  .OBJ  files 
  4692. are on the default drive and the necessary .LIB files are on the "C" drive.
  4693.  
  4694. Microcom's  error-free protocol,  MNP,  is available AS AN OPTION for  file 
  4695. transfer beginning with version CPC12-4A of RBBS-PC.   The RBBS-PC.EXE file 
  4696. that  is distributed includes code from the MNP library.   The MNP  library 
  4697. file provided with RBBS-PC is done so under the following condition:
  4698.     
  4699.     "The  MNP  library  file provided with RBBS-PC  is  the  exclusive 
  4700.     proprietary  property  of  Microcom,  Inc.  and  this  copyrighted 
  4701.     program material is supplied by Microcom exclusively for use  with 
  4702.     the  RBBS-PC  bulletin board system.   Inclusion of  library  code 
  4703.     within RBBS-PC does not in any way grant a license to the Microcom 
  4704.     Networking  Protocol (MNP).   The use of the RBBS-PC  MNP  library 
  4705.     code  modules or MNP in any product other than the RBBS-PC program 
  4706.     is  a  violation  of  Microcom's proprietary  rights  in  the  MNP 
  4707.     technology."
  4708.  
  4709. Because  the Microcom library code was generated by the Lattice C compiler, 
  4710. and because the Lattice C compiler makes assumptions about how data segments 
  4711. are loaded in memory that are incompatible with the way the LINKer supplied 
  4712. with  the QuickBASIC compiler,  MNP is regretably unavailable with  RBBS-PC 
  4713. version CPC13-1A.  Hopefully this is only temporary.
  4714.  
  4715.  
  4716.  
  4717.  
  4718.  
  4719.  
  4720.  
  4721.  
  4722.  
  4723.  
  4724.  
  4725.  
  4726.  
  4727.  
  4728.  
  4729.  
  4730.  
  4731.  
  4732.  
  4733.  
  4734.  
  4735.  
  4736.  
  4737.  
  4738.  
  4739.  
  4740.  
  4741.                        Page 79 of 108
  4742. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4743.  
  4744. 19.0 LIMITED LICENSE
  4745. --------------------
  4746. The   RBBS-PC software is copyrighted but A LIMITED LICENSE IS GRANTED  and  
  4747. each user is free to use and share it under the following conditions:
  4748.  
  4749.     1. You may NOT distribute RBBS-PC in modified form.
  4750.     2. You may NOT charge a fee for RBBS-PC itself,  and
  4751.     3. You MUST retain all references to the copyright and authors.
  4752.  
  4753. Please  distribute the original version (or update thereof) of the program.   
  4754. If  you have changes please distribute them using the conventions described 
  4755. in  section 1.4.    This is necessary so that  future  revisions   can   be 
  4756. easily added to the system without requiring the  entire  program.
  4757.  
  4758. Please do NOT resequence the program.   All revisions will be as files that  
  4759. replace  the  base program or update thereof and the existing line  numbers 
  4760. will be referenced whend describing new fixes and enhancements.
  4761.  
  4762.  
  4763.  
  4764.  
  4765.  
  4766.  
  4767.  
  4768.  
  4769.  
  4770.  
  4771.  
  4772.  
  4773.  
  4774.  
  4775.  
  4776.  
  4777.  
  4778.  
  4779.  
  4780.  
  4781.  
  4782.  
  4783.  
  4784.  
  4785.  
  4786.  
  4787.  
  4788.  
  4789.  
  4790.  
  4791.  
  4792.  
  4793.  
  4794.  
  4795.  
  4796.  
  4797.  
  4798.  
  4799.  
  4800.  
  4801.                        Page 80 of 108
  4802. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4803.  
  4804. 20.0 LIMITED WARRANTY
  4805. ---------------------
  4806. The RBBS-PC CPC13 program is provided "as is" without warranty of any kind,  
  4807. either  expressed  or implied,   including  but not limited to the  implied  
  4808. warranties  of merchantability and fitness for a particular  purpose.   The  
  4809. entire  risk as to the the quality and performance of the program  is  with  
  4810. the  user,   and  should  the program prove defective,  the user  and   not  
  4811. the   authors will assume the entire cost of all necessary remedies.   None 
  4812. of  the  authors  warrant that the functions contained in the program  will 
  4813. meet   any   users'    requirements   or  that   the   operation   of   the  
  4814. program   will    be  uninterrupted or error-free.    In  any  case,   each 
  4815. author's entire liability  will  be  limited  to the total amount of  money 
  4816. the  individual  user  paid  directly and explicitly to each author for the 
  4817. use of RBBS-PC.
  4818.  
  4819.  
  4820.  
  4821.  
  4822.  
  4823.  
  4824.  
  4825.  
  4826.  
  4827.  
  4828.  
  4829.  
  4830.  
  4831.  
  4832.  
  4833.  
  4834.  
  4835.  
  4836.  
  4837.  
  4838.  
  4839.  
  4840.  
  4841.  
  4842.  
  4843.  
  4844.  
  4845.  
  4846.  
  4847.  
  4848.  
  4849.  
  4850.  
  4851.  
  4852.  
  4853.  
  4854.  
  4855.  
  4856.  
  4857.  
  4858.  
  4859.  
  4860.  
  4861.                        Page 81 of 108
  4862. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4863.  
  4864. 21.0 UPGRADING FROM CPC12-5B TO CPC13-1A
  4865. ----------------------------------------
  4866. Before  upgrading from CPC13-5B to CPC13-1A,  you should follow these  five 
  4867. steps:
  4868.  
  4869.    1.    Create backup files of all your current USERS and MESSAGES files.
  4870.  
  4871.    2.    Pack all your current MESSAGES files using CONFIG version 1.8.
  4872.  
  4873.    3.    Rebuild all your current USERS files using CONFIG version 1.8.
  4874.  
  4875.    4.    Re-pack  your  current  your  current  MESSAGES  files  using  CONFIG 
  4876.          version 1.9.
  4877.  
  4878.    5.    Rebuild  (again) all your current USERS files using CONFIG version 
  4879.          1.9.
  4880.  
  4881. PLEASE  NOTE!!!!!  ---- CPC13-1A  has a new CONFIG.BAS (version  1.9  that 
  4882. replaces  the  older  versions of CONFIG.BAS and the .DEF files  that  they 
  4883. created!
  4884.  
  4885.  
  4886.  
  4887.  
  4888.  
  4889.  
  4890.  
  4891.  
  4892.  
  4893.  
  4894.  
  4895.  
  4896.  
  4897.  
  4898.  
  4899.  
  4900.  
  4901.  
  4902.  
  4903.  
  4904.  
  4905.  
  4906.  
  4907.  
  4908.  
  4909.  
  4910.  
  4911.  
  4912.  
  4913.  
  4914.  
  4915.  
  4916.  
  4917.  
  4918.  
  4919.  
  4920.  
  4921.                        Page 82 of 108
  4922. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4923.  
  4924. 22.0 RBBS-PC FUTURE DIRECTIONS
  4925. ------------------------------
  4926. RBBS-PC   can  be  a lot of fun to operate and can be a  useful  tool   for  
  4927. information exchange.   Pass copies of it along to others so that more such 
  4928. will  continue to spring up all over the country (and the world)!   RBBS-PC 
  4929. seems  to be meeting a  need within the IBM-compatible PC  user  community.   
  4930. As  you  can see from the  brief  history  of RBBS-PC outlined  in  section 
  4931. 1.3,   it  has   had   a  rapid  evolution in the past two  years  of  it's 
  4932. existence.    However,  there  are  some  future  directions that I see for 
  4933. it and I would like to  share  them  with you.
  4934.  
  4935. RBBS-PC  REDESIGN  -- On June 18,  1985 IBM announced a  new  IBM  Personal 
  4936. Computer  BASIC Compiler 2.0 and it has been available since the third week 
  4937. in  July  of 1985 at an unconscionable list price  of  $495.    Microsoft's 
  4938. QuickBasic  compiler has been available since August 2,  1985 with  a  list 
  4939. price  of $99.   Even with the features of these new  compilers,  the  code 
  4940. segment of RBBS-PC version CPC13-1A is within 155 bytes of the 64K maximum.  
  4941. Fortunately the new compilers allow as many 64K code segments as desired to 
  4942. be linked together into one .EXE file.  Obviously, future versions of RBBS-
  4943. PC  will have at least two code segments -- one for the file transfer  sub-
  4944. system and one for the rest of RBBS-PC.   In this way, more features can be 
  4945. added to RBBS-PC while still maintaing one .EXE file to be distributed.
  4946.  
  4947. ADDITIONAL  PROTOCOLS  -- there  is at least one additional  protocol  that  
  4948. should  be  added to RBBS-PC.   It is one that makes use of  CRC16  (cyclic  
  4949. redundancy  check) and larger than 128-byte blocks.   A "public domain" one 
  4950. exists for  the IBM PC  and  is  implemented  in  Hayes' SMARTCOMII.    One 
  4951. SYSOP has already told me  he  is  working on adding that to RBBS-PC.
  4952.  
  4953. NATIONAL  ANNUAL  MEETING OF SYSOP'S --  As PC's (IBM's and others)  become  
  4954. more  common in homes and offices,  their use as vehicles  for  information  
  4955. exchange will grow.  Indeed, the growth of RBBS-PC has been astounding!  An  
  4956. annual  meeting  of  SYSOP's  could foster this  growth,  the  exchange  of  
  4957. information,  assist  in focusing on the issues (regulatory and  otherwise)  
  4958. that  foster/inhibit  this growth,  and act as a forum for  new  ideas.   A  
  4959. national  meeting,  perhaps  sponsored by the Capital PC  User  Group,  and  
  4960. initially  funded  by the major PC manufacturers  (Apple,  IBM  -- are  you  
  4961. listening?),  valued  added network suppliers (MCI,  Telenet -- don't  miss 
  4962. this  untapped market),   and the major modem manufacturers (Hayes,  Rixon, 
  4963. Racal- Vadic) could be held in Washington in 1986 (at the FCC). The RBBS-PC 
  4964. SYSOPS   are   not  found in the big corporations -- the Fortune  500  have 
  4965. their   super   mainframes.     It   is   in   the   millions   of    small  
  4966. businesses,   non-profit  associations,  educational  institutions that the 
  4967. RBBS  concept  has found  a  home.     As  I expect most who  would  attend 
  4968. would  be paying their own  way,   the  first  conference  would   probably  
  4969. consist  of   that  small  "band  of  brothers"  who  have  set  up  boards 
  4970. out  of  the  intensity  of  their  own  commitment.   If  you  are with  a 
  4971. manufacturer  that might be  interested  in  sponsoring  such a meeting  in 
  4972. 1985,  work with your organization to make it  happen!  If  in  the  normal 
  4973. course  of  your business  contacts  you  see  a   potential   sponsor   of  
  4974. such   a conference,   persuade  them  to  look  into  sponsoring  it.   My  
  4975. own   vision  of  such  a conference is  sort  of   a   1980's   electronic  
  4976. "Woodstock"   -- if   for no other reason  because  of  the  very   "volks" 
  4977. nature of SYSOPS.    It has been a long time since Washington,   D.C.   has 
  4978. had  a conference "of the people,  by the people,  and for the people."  If  
  4979. you are interested, drop me a line here in Great Falls, Va.
  4980.  
  4981.                        Page 83 of 108
  4982. RBBS-PC CPC13-1A, Copyright 1985 by D. Thomas Mack          December 1, 1985
  4983.  
  4984. RBBS-PC,  THE  LARGEST  SOFTWARE  HOUSE IN THE WORLD --  The above  is  not 
  4985. intended  to be "all inclusive."  My "Userware" concept is founded  on  the 
  4986. principle stated in section 1.0 -- "software which is shared becomes better 
  4987. than  it  was."   Relying on Federal copyright protection,  it is  my  firm 
  4988. belief  that RBBS-PC's source code can be distributed without the  risk  of 
  4989. "loss  of ownership" (i.e.  it becoming "public domain").   In fact I think 
  4990. that all software (commercial and non-commercial) should be distributed  as 
  4991. both  compiled/executable  files  and with their  source  code.   RBBS-PC's 
  4992. copyrights  have never been violated -- this is due more to the  fact  that 
  4993. RBBS-PC  enthusiasts are ever-vigilant of RBBS-PC's copyrights rather  than 
  4994. due to any lack of attempts to "sell" RBBS-PC or RBBS-PC look-alikes to the 
  4995. unsuspecting public.
  4996.  
  4997. Incorporating  these new features and ideas into each new release of  RBBS-
  4998. PC,  making  sure that upward compatability with earlier version of RBBS-PC 
  4999. exists,  as well as maintaining RBBS-PC's copyright,  are all things that I 
  5000. accept the responsibility for.   However,  it is RBBS-PC's "support  staff" 
  5001. (i.e.  all  those  who  enhance RBBS-PC and share such  enhancements)  that 
  5002. continues to make RBBS-PC a unique experiment in PC software.
  5003.  
  5004. No  one should feel that the above list of "future directions" exhausts all 
  5005. the possibilities for RBBS-PC.   In fact, I am absolutely certain that even 
  5006. as  this  is written innovative enhancements are being created for  RBBS-PC 
  5007. that  I  haven't even mentioned.   It is my sincerest hope that if  RBBS-PC 
  5008. continues  to suceed within the IBM PC industry in becoming the  "bulletin-
  5009. board standard," software vendors will begin examing the reasons for  RBBS-
  5010. PC's success and come to understand that 
  5011.  
  5012. 1.  The best form of software support is user support;
  5013.  
  5014. 2.  The best source for software enhancements are from it's users;
  5015.  
  5016. 3.  The best software continually adopts itself to users needs; and
  5017.  
  5018. 4.  The best way to minimize software development is to distribute
  5019.     source code;
  5020.  
  5021. Each  RBBS-PC  system operator has the opportunity to affect  what  RBBS-PC 
  5022. becomes in the future.   Many already have.   RBBS-PC continues to grow and 
  5023. expand because hundreds (and quite possibly thousands) of SYSOP's spend the 
  5024. time  and trouble not only to modify RBBS-PC to meet their needs,  but also 
  5025. to  share  these modifications with others.   I do not know  of  any  other 
  5026. software  for  the  IBM  PC  that has such a  vast  number  of  programmers 
  5027. supporting  it.   In  section 1.3,  I name almost 50 such  individuals  and 
  5028. acknowledge  that  there are a lot more!   With the  sturctured  design  of 
  5029. version 13-1A's source code that the new BASIC compilers allowed, even more 
  5030. RBBS-PC system operators are invited to contribute.   Take the time!   Make 
  5031. the difference!
  5032.  
  5033. These  are  only just a few of the ideas that come to mind for  RBBS-PC  in  
  5034. December of 1985.  It will be interesting to see how it evolves.
  5035.  
  5036.  
  5037.  
  5038.  
  5039.  
  5040.  
  5041.                        Page 84 of 108
  5042.